スレッドの終了、ウインドのクローズを検出するには?

解決


四苦八苦  2005-06-21 21:27:53  No: 90569

VB.netから、ファイル名(拡張子に関連付けられた)外部プログラムを起動した場合、2つ目以降のIEはプロセスではなくスレッドとして起動されるようです。
プロセスの終了イベントは、Exitedイベントで検出できましたが、スレッドの終了あるいはウインドのクローズを容易に検出する方法はありませんでしょうか。
よろしくお願いいたします。


K.J.K.  2005-06-21 22:06:38  No: 90570

ShDocVw.ShellWindowsのWindowRevokedイベントなどを利用するとか。


四苦八苦  2005-06-23 20:31:16  No: 90571

K.J.K.さん、早速のレスポンスありがとうございました。

提示頂いたイベントを探しましたが、初心者の私にはが良く分かりませんでした
ので、視点を変えて以下のようにして何とか解決の見込みが立ちました。

(1)拡張子(.html)に関連付けられた実行ファイルをレジストリから見つける。
(2)実行ファイルが、iexplore.exe だった時はファイル名から直接起動しないで、
   "iexplore.exeのパス" + "パラメータ(ファイル名)" として起動する。
(3)それ以外の時は、ファイル名から直接起動する。

これで、いずれの場合もプロセスとして起動され、終了時にExitedイベントが
発生します。

参考:http://dobon.net/vb/dotnet/system/findassociatedexe.html


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加