IEを閉じると発生するイベント

解決


柿の種  2005-11-24 15:36:48  No: 92869

VB.NET環境なのですが、
IE = CreateObject("InternetExplorer.Application")
IE.navigate("http://...")
IE.Visible = True

で起動したIEを直接閉じようとした場合に
終了しても良いかどうかの確認をしたいのですが
どうしたら良いでしょうか?
初歩的なケースかと思い色々と探してみたのですが、
以外に出てなくて申し訳ないのですが教えて頂きたいです。
宜しくお願い致します。


魔界の仮面弁士  2005-11-24 20:04:50  No: 92870

> IEを閉じると発生するイベント
InternetExplorerオブジェクトのOnQuitイベントですかね。
http://msdn.microsoft.com/workshop/browser/webbrowser/reference/events/onquit.asp

> 終了しても良いかどうかの確認をしたいのですが
そういう目的ならば、windowオブジェクトのonbeforeunloadイベントの方が良いかも。
http://msdn.microsoft.com/workshop/browser/mshtml/reference/events/htmlwindowevents2/onbeforeunload.asp
http://msdn.microsoft.com/workshop/browser/mshtml/reference/events/htmlwindowevents/onbeforeunload.asp


柿の種  2005-11-25 14:46:29  No: 92871

魔界の仮面弁士さん回答ありがとうございます。
OnQuit()の方法で試してみたのですがIEを閉じても変化がありませんでした。
下記のようなコードで試してみたのですが、どこか間違っているでしょうか?
何か別の設定など必要でしたらどのような設定かを教えて頂けないでしょうか。
あつかましいお願いでたいへん申し訳ございませんがお願い致します。

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
IE = CreateObject("InternetExplorer.Application")
IE.navigate("http://www.yahoo.com")
IE.Visible = True
End Sub

Private Sub object_OnQuit()
MsgBox ("IEが閉じました")
End Sub


柿の種  2005-11-25 14:49:46  No: 92872

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
IE = CreateObject("InternetExplorer.Application")
IE.navigate("http://www.yahoo.com")
IE.Visible = True
End Sub

Private Sub IE_OnQuit()    <----------訂正
MsgBox ("IEが閉じました")
End Sub

すみません。試したコードは「subject」ではなく「IE」としておりました。


魔界の仮面弁士  2005-11-25 18:04:01  No: 92873

AddHandlerステートメントを使うか、もしくは、変数IEを
WithEvents付きの変数として宣言しておく必要があります。


柿の種  2005-11-25 18:55:57  No: 92874

魔界の仮面弁士さん回答ありがとうございます。

AddHandler IE.Quit, AddressOf IE_OnQuit
を追加してみたのですが、Quitは使えないというエラーが出てしまいました。

もう一つ
Dim WithEvents IE As Object
を試してみたのですが、Object変数ではイベントが発生しないとの
ことでエラーになってしまいます。

Dim WithEvents IE As Process
に変えてみたらここはエラーにはならなくなったのですが、
IE.Navigate("....")などが使えなくなってしまいました。

度々すみませんが具体的な方法をご教示頂けると助かります。


あん  2005-11-25 20:43:23  No: 92875

>Dim WithEvents IE As Object
Dim WithEvents IE As InternetExplorer

かな


柿の種  2005-11-26 03:58:39  No: 92876

お返事ありがとうございます。

>Dim WithEvents IE As InternetExplorer
そういうのがあったのですか。

今ごはん食べてるのであとで試してみたいと思います(^o^)


柿の種  2005-11-26 08:04:29  No: 92877

だめなようです。
InternetExplorer
^^^^^^^^^^^^^^^^となってしまいました。

色々試してみることにします。

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


魔界の仮面弁士  2005-11-26 10:54:51  No: 92878

使用するアセンブリを『参照設定』しておく必要があります。

下記などが参考になるでしょう。OnQuitの処理も行われています。
http://support.microsoft.com/kb/304990/ja


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

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






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