Develop and Download Open Source Software

Browse CVS Repository

Annotation of /gikonavigoeson/gikonavi/gikoNavi.dpr

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.12 - (hide annotations) (download)
Thu Apr 1 14:35:36 2004 UTC (20 years ago) by h677
Branch: MAIN
Changes since 1.11: +1 -1 lines
メモリリーク対策

1 hi_ 1.1 program gikoNavi;
2    
3     {%ToDo 'gikoNavi.todo'}
4    
5     uses
6 h677 1.12 //MemCheck in 'MemCheck.pas', {'MemCheckStackTrace'?????????????B}
7 hi_ 1.1 Windows,
8     SysUtils,
9     Forms,
10     Messages,
11     MainForm in 'MainForm.pas' {MainWindow},
12     Giko in 'Giko.pas' {GikoForm},
13     Splash in 'Splash.pas' {SplashWindow},
14     About in 'About.pas' {AboutDialog},
15     Option in 'Option.pas' {OptionDialog},
16     Editor in 'Editor.pas' {EditorForm},
17     Round in 'Round.pas' {RoundDialog},
18     ListSelect in 'ListSelect.pas' {ListSelectDialog},
19     Search in 'Search.pas' {SearchDialog},
20     GikoSystem in 'GikoSystem.pas',
21     Setting in 'Setting.pas',
22     BoardGroup in 'BoardGroup.pas',
23     SaveFile in 'SaveFile.pas',
24     Sort in 'Sort.pas',
25     ThreadControl in 'ThreadControl.pas',
26     ItemDownload in 'ItemDownload.pas',
27     RoundData in 'RoundData.pas',
28     RoundName in 'RoundName.pas' {RoundNameDialog},
29     NewBoard in 'NewBoard.pas' {NewBoardDialog},
30     Dolib in 'Dolib.pas',
31     UBase64 in 'Encrypt\UBase64.pas',
32     UCryptAuto in 'Encrypt\UCryptAuto.pas',
33     KeySetting in 'KeySetting.pas' {KeySettingForm},
34     FavoriteAdd in 'FavoriteAdd.pas' {FavoriteAddDialog},
35     NewFavoriteFolder in 'NewFavoriteFolder.pas' {NewFavoriteFolderDialog},
36     FavoriteArrange in 'FavoriteArrange.pas' {FavoriteArrangeDialog},
37     Favorite in 'Favorite.pas' {FavoriteDM: TDataModule},
38     AddressHistory in 'AddressHistory.pas' {AddressHistoryDM: TDataModule},
39     Preview in 'Preview.pas',
40     HTMLDocumentEvent in 'HTMLDocumentEvent.pas',
41     Kotehan in 'Kotehan.pas' {KotehanDialog},
42     MonaUtils in 'MonaUtils.pas',
43     HintWindow in 'HintWindow.pas',
44 yoffy 1.2 GikoUtil in 'GikoUtil.pas',
45     ToolBarSetting in 'ToolBarSetting.pas' {ToolBarSettingDialog},
46     ToolBarUtil in 'ToolBarUtil.pas',
47 h677 1.3 YofUtils in 'YofUtils.pas',
48 h677 1.4 AbonUnit in 'AbonUnit.pas',
49 yoffy 1.5 IndividualAbon in 'IndividualAbon.pas' {IndividualAbonForm},
50     Trip in 'Trip.pas',
51 yoffy 1.7 GikoXMLDoc in 'GikoXMLDoc.pas',
52 yoffy 1.8 ExternalBoardManager in 'ExternalBoardManager.pas',
53     ExternalThreadItem in 'ExternalThreadItem.pas',
54     ExternalBoardItem in 'ExternalBoardItem.pas',
55     ExternalBoardPlugInMain in 'ExternalBoardPlugInMain.pas',
56     ExternalFilePath in 'ExternalFilePath.pas';
57 hi_ 1.1
58     {$R *.RES}
59     {$R gikoResource.res}
60    
61     var
62     hMutex: THandle;
63     Wnd{, AppWnd}: HWnd;
64     i: Integer;
65     CDS: TCopyDataStruct;
66     const
67     MutexString: string = 'gikoNaviInstance';
68     begin
69     hMutex := OpenMutex(MUTEX_ALL_ACCESS, False, PChar(MutexString));
70     if hMutex <> 0 then begin
71     //?~???[?e?b?N?X???????直?????????N?貼???~
72     Wnd := FindWindow('TGikoForm', nil);
73     if Wnd <> 0 then begin
74     //?哲???N?貼?????M?R?i?r???A?N?e?B?u?泥???A?C?R???泥?????????巽????
75     SetForegroundWindow(Wnd);
76     if IsIconic(Wnd) then
77     SendMessage(Wnd, WM_SYSCOMMAND, SC_RESTORE, -1);
78     // AppWnd := GetWindowLong(Wnd, GWL_HWNDPARENT);
79     // if (AppWnd <> 0) and (IsIconic(AppWnd)) then
80     // SendMessage(AppWnd, WM_SYSCOMMAND, SC_RESTORE, -1);
81    
82     //?長?A?????????????巽?N?貼?????M?R?i?r?????辿
83     for i := 1 to ParamCount do begin
84     CDS.dwData := 0;
85     CDS.cbData := Length(ParamStr(i)) + 1;
86     GetMem(CDS.lpData, CDS.cbData);
87     try
88     StrPCopy(CDS.lpData, ParamStr(i));
89     SendMessage(Wnd, WM_COPYDATA, 0, LParam(@CDS));
90     finally
91     FreeMem(CDS.lpData);
92     end;
93     end;
94     end;
95 yoffy 1.6
96 hi_ 1.1 CloseHandle(hMutex);
97     end else begin
98     //?~???[?e?b?N?X???????直???????????A?v???P?[?V?????N?貼???s
99     hMutex := CreateMutex(nil, False, PChar(MutexString));
100     Application.Initialize;
101     Application.Title := '?M?R?i?r';
102     Application.ShowMainForm := False;
103     Application.CreateForm(TMainWindow, MainWindow);
104     Application.CreateForm(TFavoriteDM, FavoriteDM);
105     Application.CreateForm(TAddressHistoryDM, AddressHistoryDM);
106     Application.CreateForm(TGikoForm, GikoForm);
107     Application.Run;
108     ReleaseMutex(hMutex);
109     end;
110     end.
111    

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26