• ベストアンサー

delphi FindControlの使い方

特定のアプリケーションが現在実行中か否かを知るには? VBでいうところの fncGet_ProcStatus("*****.exe")をDelphi ではどう記述するんでしょうか? FindControl(Handle: HWnd)を使用するんでしょうか? Handleの部分の書き方がわかりません。 どなたか、お助けを。

質問者が選んだベストアンサー

  • ベストアンサー
  • SHIMAPEE
  • ベストアンサー率75% (154/203)
回答No.1

VBは持っていませんが「fncGet_ProcStatus」で検索したら下記が出てきました。 http://oshiete1.goo.ne.jp/qa1033141.html?ans_count_asc=2 もし二重起動の抑止が目的でしたら「Delphi 二重起動」などで検索してみて下さい。たくさん現れ、例えば下記が参考になると思います。Mutexを使う方法です。 http://forum.nifty.com/fdelphi/faq/00022.htm もしTop LevelのWindowを探したいのでしたらFindWindw APIを使います。 DelphiのFindControlはコントロールのWindow Handleがわかっているとき、コントロールを処理する場合に使うものです。

situmonnsya
質問者

お礼

自己解決しました。 ck_window := FindWindow(nil, 'ウインドウ名') if ck_window=0 then ~~~ でよかったです。 ありがとうございました。

situmonnsya
質問者

補足

二重起動の防止でなく、目的とする***.exeが完全に終了して閉じているかを他の***.exeで知りたいのですが。 ご回答のFindWindw APIがいいみたいなので 例えば if FindWindow(nil, '電卓') = nil then~~~ みたいにしたいのですが、コード記述がわかりません。 よろしければ、追加ご教授があれば幸です。

関連するQ&A