↓Microsoft の正式な表現ですが、微妙に解りにくいですね。 スレッドからコントロールを操作する http://msdn.microsoft.com/ja-jp/library/757y83z4.aspx 拡張子:txtvbswsfjsphpjavahtmlutf8sjis 簡単に言えば、 コントロールの正しい所有者(Me)が管理しているメソッド(Me.Method)を作成しておいて、 どこからか呼ばれたメソッド内(いわゆる別スレッド)または、外部から呼ばれたイベント内からは、 invoke(Me.invoke) を使ってそのメソッドを呼び出しなさい。 という事です。 ↓は IE キャプチャーでのサンプルです。 http://winofsql.jp/VA003334/dnettool080607195037_080620175256.htm 拡張子:txtvbswsfjsphpjavahtmlutf8sjis IE キャプチャー では、COM を使って実行中の IE オブジェクトを捕獲し、自分のメモリ空間にあるイベントを各 IE に登録しています。 よって、ドキュメントがロードされるとイベントが発生しますが、そこから直接 TabControl や Formにアクセスできません。 結果、invoke の出番となります
簡単に言えば、 コントロールの正しい所有者(Me)が管理しているメソッド(Me.Method)を作成しておいて、 どこからか呼ばれたメソッド内(いわゆる別スレッド)または、外部から呼ばれたイベント内からは、 invoke(Me.invoke) を使ってそのメソッドを呼び出しなさい。 という事です。
IE キャプチャー では、COM を使って実行中の IE オブジェクトを捕獲し、自分のメモリ空間にあるイベントを各 IE に登録しています。 よって、ドキュメントがロードされるとイベントが発生しますが、そこから直接 TabControl や Formにアクセスできません。 結果、invoke の出番となります