アプリ版:「スタンプのみでお礼する」機能のリリースについて

Delphi 6 です。

実行中の「***.exe」(ウインドウ)を閉じさせる方法はありますか?
実行中のAAA.exeをでBBB.exeから閉じさせる方法です。
強制終了でなく、OnCloseイベントにも行く方法を教えて下さい。

A 回答 (1件)

Top Level WindowにWM_CLOSEメッセージを送ってみてはどうでしょうか。

ただし、これはWindowを閉じる操作と同じですからアプリケーションによっては素直に終了しません。例えば編集中のメモ帳では「保存しますか?」のダイアログが現れます。(イベントが発生するという意味ではご要望どおりですが)

Windows XP Pro SP2 + Delphi2006で試していますが他のWindows + Delphi6でも同じだと思います。

-----
var
Wh: HWND;
 :

Wh := FindWindow('Notepad', nil); // メモ帳をクラス名で探す
if Wh <> 0 then
PostMessage(Wh, WM_CLOSE, 0, 0)
else
ShowMessage('メモ帳は起動されていません。');
-----
    • good
    • 0
この回答へのお礼

実験してみました。
希望どうりの結果です。
今日は遅いので、明日作成中のソフトに組込みます。

ありがとうございました。

お礼日時:2007/03/12 01:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!