OSDN Git Service

スレ一覧の絞込みでCTRL+DELで個別に削除できるように修正
[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   ExtPreviewDatamodule in 'ExtPreviewDatamodule.pas' {ExtPreviewDM: TDataModule};
84
85 {$R *.RES}
86 {$R gikoResource.res}
87
88 var
89         hMutex: THandle;
90         Wnd{, AppWnd}: HWnd;
91         i: Integer;
92         CDS: TCopyDataStruct;
93 const
94         MutexString: string = 'gikoNaviInstance';
95 begin
96         hMutex := OpenMutex(MUTEX_ALL_ACCESS, False, PChar(MutexString));
97         if hMutex <> 0 then begin
98                 //\83~\83\85\81[\83e\83b\83N\83X\82ª\91\8dÝ\82µ\82½\8fê\8d\87\82Í\8bN\93®\92\86\8e~
99                 Wnd := FindWindow('TGikoForm', nil);
100                 if Wnd <> 0 then begin
101                         //\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³
102                         try
103                                 SetForegroundWindow(Wnd);
104                         except
105                 //\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
106                         end;
107                         if IsIconic(Wnd) then
108                                 SendMessage(Wnd, WM_SYSCOMMAND, SC_RESTORE, -1);
109 //                      AppWnd := GetWindowLong(Wnd, GWL_HWNDPARENT);
110 //                      if (AppWnd <> 0) and (IsIconic(AppWnd)) then
111 //                              SendMessage(AppWnd, WM_SYSCOMMAND, SC_RESTORE, -1);
112
113                         //\82Å\81A\88ø\90\94\82ª\82 \82Á\82½\82ç\8bN\93®\8dÏ\82Ý\83M\83R\83i\83r\82É\91\97\82é
114                         for i := 1 to ParamCount do     begin
115                                 CDS.dwData := 0;
116                                 CDS.cbData := Length(ParamStr(i)) + 1;
117                                 GetMem(CDS.lpData, CDS.cbData);
118                                 try
119                                         StrPCopy(CDS.lpData, ParamStr(i));
120                                         SendMessage(Wnd, WM_COPYDATA, 0, LParam(@CDS));
121                                 finally
122                                         FreeMem(CDS.lpData);
123                                 end;
124                         end;
125                 end;
126
127                 CloseHandle(hMutex);
128         end else begin
129                 //\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
130                 hMutex := CreateMutex(nil, False, PChar(MutexString));
131                 Application.Initialize;
132                 Application.Title := '\83M\83R\83i\83r';
133                 Application.ShowMainForm := False;
134                 Application.CreateForm(TMainWindow, MainWindow);
135   Application.CreateForm(TFavoriteDM, FavoriteDM);
136   Application.CreateForm(TAddressHistoryDM, AddressHistoryDM);
137   Application.CreateForm(TGikoDM, GikoDM);
138   Application.CreateForm(TInputAssistDM, InputAssistDM);
139   Application.CreateForm(TReplaceDM, ReplaceDM);
140   Application.CreateForm(TExtPreviewDM, ExtPreviewDM);
141   Application.CreateForm(TGikoForm, GikoForm);
142   Application.Run;
143                 ReleaseMutex(hMutex);
144         end;
145 end.
146