ウィンドウを指定して他のアプリケーションを終了する
|
37 |
SendPostClose |
動作確認 |
Delphi2007 |
更新日 |
2008/01/18(金) |
他のアプリケーションを終了させるには
メインウィンドウのハンドルに
WM_CLOSEか、WM_SYSCOMMANDのSC_CLOSEを
SendMessageかPostMessageしてやるといいでしょう。
SendMessageは対象アプリが終了するまで待ちますが
PostMessageはメッセージを投げてすぐ処理を続ける事ができます。
以下、参考にメモ帳を終了させる為のコードです。
────────────────────
procedure TForm1.Button1Click(Sender: TObject);
var
hNotepad: HWND;
begin
hNotepad:=FindWindow('Notepad', nil);
SendMessage(hNotepad, WM_SYSCOMMAND, SC_CLOSE, 0);
//もしくは
// SendMessage(hNotepad, WM_CLOSE, 0, 0);
end;
────────────────────
参考────────────────────
Delphi広場
<11298> [D4] Re:他のアプリケーションを終了させる
|