VB6です。
IEオブジェクトをフォームにSetParentした(IEの親ウィンドウをフォームにする)後の終了処理で
困っています。
SetParent した後時間を置いて、強制的にですが End で終了させています。
このとき、IEがエラー()を起こしてしまい、OSが不安定になってしまいます。
この処理を行った後、OSを終了させる時にSysFaderというプロセスがでてしまいます。
SetParent で親ウィンドウを変更した後はそのIEオブジェクトはどのようなタイミングで解放
すればきちんと終了させれるでしょうか?
フォームの終了時(Unload(), QueryUnload()等のイベント)に Set IE = Nothing 等で解放させてますが、うまくいきません。
なにかいい方法はありませんでしょうか?
> フォームの終了時(Unload(), QueryUnload()等のイベント)に
> Set IE = Nothing 等で解放させてますが、うまくいきません。
ヘルプで End ステートメントの項を読むと、以下のように書いてありますよね。
----
フォームおよびクラス モジュールの Unload、QueryUnload、
および Terminate イベントに記述されたコードは実行されません。
----
> なにかいい方法はありませんでしょうか?
まずは、End を使うのを止めましょう。
# というよりも、別のアプリケーションを SetParent するという仕様自体を
# 見直した方が良いのかも。
魔界の仮面弁士様ありがとうございました。
ツイート | ![]() |