OSDN Git Service

businessのスペル修正
[gikonavigoeson/gikonavi.git] / gikoNavi.dpr
1 program gikoNavi;
2
3 {%ToDo 'gikoNavi.todo'}
4
5 uses
6   Windows,
7   SysUtils,
8   Forms,
9   Messages,
10   MainForm in 'MainForm.pas' {MainWindow},
11   Giko in 'Giko.pas' {GikoForm},
12   Splash in 'Splash.pas' {SplashWindow},
13   About in 'About.pas' {AboutDialog},
14   Option in 'Option.pas' {OptionDialog},
15   Editor in 'Editor.pas' {EditorForm},
16   Round in 'Round.pas' {RoundDialog},
17   ListSelect in 'ListSelect.pas' {ListSelectDialog},
18   Search in 'Search.pas' {SearchDialog},
19   GikoSystem in 'GikoSystem.pas',
20   Setting in 'Setting.pas',
21   BoardGroup in 'BoardGroup.pas',
22   Sort in 'Sort.pas',
23   ThreadControl in 'ThreadControl.pas',
24   ItemDownload in 'ItemDownload.pas',
25   RoundData in 'RoundData.pas',
26   RoundName in 'RoundName.pas' {RoundNameDialog},
27   NewBoard in 'NewBoard.pas' {NewBoardDialog},
28   Dolib in 'Dolib.pas',
29   UBase64 in 'Encrypt\UBase64.pas',
30   UCryptAuto in 'Encrypt\UCryptAuto.pas',
31   KeySetting in 'KeySetting.pas' {KeySettingForm},
32   FavoriteAdd in 'FavoriteAdd.pas' {FavoriteAddDialog},
33   NewFavoriteFolder in 'NewFavoriteFolder.pas' {NewFavoriteFolderDialog},
34   FavoriteArrange in 'FavoriteArrange.pas' {FavoriteArrangeDialog},
35   Favorite in 'Favorite.pas' {FavoriteDM: TDataModule},
36   AddressHistory in 'AddressHistory.pas' {AddressHistoryDM: TDataModule},
37   Preview in 'Preview.pas',
38   HTMLDocumentEvent in 'HTMLDocumentEvent.pas',
39   Kotehan in 'Kotehan.pas' {KotehanDialog},
40   HintWindow in 'HintWindow.pas',
41   GikoUtil in 'GikoUtil.pas',
42   ToolBarSetting in 'ToolBarSetting.pas' {ToolBarSettingDialog},
43   ToolBarUtil in 'ToolBarUtil.pas',
44   YofUtils in 'YofUtils.pas',
45   AbonUnit in 'AbonUnit.pas',
46   IndividualAbon in 'IndividualAbon.pas' {IndividualAbonForm},
47   Trip in 'Trip.pas',
48   GikoXMLDoc in 'GikoXMLDoc.pas',
49   ExternalBoardManager in 'ExternalBoardManager.pas',
50   ExternalThreadItem in 'ExternalThreadItem.pas',
51   ExternalBoardItem in 'ExternalBoardItem.pas',
52   ExternalBoardPlugInMain in 'ExternalBoardPlugInMain.pas',
53   ExternalFilePath in 'ExternalFilePath.pas',
54   MojuUtils in 'MojuUtils.pas',
55   crc in 'gzip_delphi2\crc.pas',
56   gzip in 'gzip_delphi2\gzip.pas',
57   zlib in 'gzip_delphi2\zlib.pas',
58   bmRegExp in 'bmRegExp\bmregexp.pas',
59   GikoCoolBar in 'Component\GikoCoolBar.pas',
60   GikoListView in 'Component\GikoListView.pas',
61   GikoPanel in 'Component\GikoPanel.pas',
62   KuroutSetting in 'KuroutSetting.pas' {KuroutOption},
63   GikoDB in 'GikoDB.pas',
64   GestureModel in 'GestureModel.pas',
65   Gesture in 'Gesture.pas',
66   GikoBayesian in 'GikoBayesian.pas',
67   Y_TextConverter in 'res\ExternalBoardPlugIn\Y_TextConverter.pas',
68   HTMLCreate in 'HTMLCreate.pas',
69   ListViewUtils in 'ListViewUtils.pas',
70   GikoDataModule in 'GikoDataModule.pas' {GikoDM: TDataModule},
71   BrowserRecord in 'BrowserRecord.pas',
72   GikoMessage in 'GikoMessage.pas',
73   InputAssist in 'InputAssist.pas' {InputAssistForm},
74   InputAssistDataModule in 'InputAssistDataModule.pas' {InputAssistDM: TDataModule},
75   DefaultFileManager in 'DefaultFileManager.pas',
76   MoveHistoryItem in 'MoveHistoryItem.pas',
77   SambaTimer in 'SambaTimer.pas',
78   HistoryList in 'HistoryList.pas',
79   ReplaceDataModule in 'ReplaceDataModule.pas' {ReplaceDM: TDataModule},
80   ResPopupBrowser in 'ResPopupBrowser.pas',
81   SkinFiles in 'SkinFiles.pas',
82   NewBoardURL in 'NewBoardURL.pas' {NewBoardURLForm};
83
84 {$R *.RES}
85 {$R gikoResource.res}
86
87 var
88         hMutex: THandle;
89         Wnd{, AppWnd}: HWnd;
90         i: Integer;
91         CDS: TCopyDataStruct;
92 const
93         MutexString: string = 'gikoNaviInstance';
94 begin
95         hMutex := OpenMutex(MUTEX_ALL_ACCESS, False, PChar(MutexString));
96         if hMutex <> 0 then begin
97                 //\83~\83\85\81[\83e\83b\83N\83X\82ª\91\8dÝ\82µ\82½\8fê\8d\87\82Í\8bN\93®\92\86\8e~
98                 Wnd := FindWindow('TGikoForm', nil);
99                 if Wnd <> 0 then begin
100                         //\8aù\82É\8bN\93®\8dÏ\82Ý\83M\83R\83i\83r\82Ì\83A\83N\83e\83B\83u\89»\81\95\83A\83C\83R\83\93\89»\82³\82ê\82Ä\82½\82ç\95\9c\8c³
101                         try
102                                 SetForegroundWindow(Wnd);
103                         except
104                 //\8f\89\8aú\89»\82ª\8fI\82í\82Á\82Ä\82¢\82È\82¢\82Æ\83t\83H\83A\83O\83\89\83E\83\93\83h\82É\88Ú\82¹\82¸\82É\97á\8aO\94­\90
105                         end;
106                         if IsIconic(Wnd) then
107                                 SendMessage(Wnd, WM_SYSCOMMAND, SC_RESTORE, -1);
108 //                      AppWnd := GetWindowLong(Wnd, GWL_HWNDPARENT);
109 //                      if (AppWnd <> 0) and (IsIconic(AppWnd)) then
110 //                              SendMessage(AppWnd, WM_SYSCOMMAND, SC_RESTORE, -1);
111
112                         //\82Å\81A\88ø\90\94\82ª\82 \82Á\82½\82ç\8bN\93®\8dÏ\82Ý\83M\83R\83i\83r\82É\91\97\82é
113                         for i := 1 to ParamCount do     begin
114                                 CDS.dwData := 0;
115                                 CDS.cbData := Length(ParamStr(i)) + 1;
116                                 GetMem(CDS.lpData, CDS.cbData);
117                                 try
118                                         StrPCopy(CDS.lpData, ParamStr(i));
119                                         SendMessage(Wnd, WM_COPYDATA, 0, LParam(@CDS));
120                                 finally
121                                         FreeMem(CDS.lpData);
122                                 end;
123                         end;
124                 end;
125
126                 CloseHandle(hMutex);
127         end else begin
128                 //\83~\83\85\81[\83e\83b\83N\83X\82ª\91\8dÝ\82µ\82È\82¢\8fê\8d\87\82Í\83A\83v\83\8a\83P\81[\83V\83\87\83\93\8bN\93®\91±\8ds
129                 hMutex := CreateMutex(nil, False, PChar(MutexString));
130                 Application.Initialize;
131                 Application.Title := '\83M\83R\83i\83r';
132                 Application.ShowMainForm := False;
133                 Application.CreateForm(TMainWindow, MainWindow);
134   Application.CreateForm(TFavoriteDM, FavoriteDM);
135   Application.CreateForm(TAddressHistoryDM, AddressHistoryDM);
136   Application.CreateForm(TGikoDM, GikoDM);
137   Application.CreateForm(TInputAssistDM, InputAssistDM);
138   Application.CreateForm(TReplaceDM, ReplaceDM);
139   Application.CreateForm(TGikoForm, GikoForm);
140   Application.Run;
141                 ReleaseMutex(hMutex);
142         end;
143 end.
144