• 締切済み

別アプリ終了させる

いつもお世話になります。 再度質問ですが、 A.EXEとB.EXEがあり、B.EXEはA.EXEからShellExecuteで起動させています。 起動したB.EXEからA.EXEを終了させたいのですが、それにはA.EXEの ウィンドウハンドルが必要になると思います。 このときにA.EXEのタイトルは動的に変更されるので、FindWindowは使えません。 そこでA.EXEからB.EXEを起動した時にhWNDを送ってやれば、B.EXEからA.EXEを 操作できるとおもいます。 hWNDを対象アプリに送りたいのですが、ShellExecuteやCreateProcessのパラメータにhWndを持たすことはできるのでしょうか? もたせることができそうですが、具体的にどう記述すればいいのかが わからないので、サンプルソースをつけていただければありがたいです。 見当違いであれば、別の方法をご教授ください。 よろしくお願いします。

みんなの回答

回答No.2

WIN32APIのPostMessage()を使用してはどうでしょうか。  PostMessage(A.EXEのウインドウハンドル,        WM_QUIT,        0,0);

参考URL:
http://www.sainet.or.jp/~eino/database/wwwboard/messages/12373.html
  • alfeim
  • ベストアンサー率58% (114/195)
回答No.1

コマンドライン引数に載せればいいだけでは? itoa()を使って文字列に変換し、CreateProcess()の第2引数に載せ実行後、B.exeのWinMain()の第3引数をatoi()すれば良いかと。まぁ実際はエラートラップルーチンは必要でしょうが・・・

関連するQ&A