Webページのインデックス作成プログラムを動作させるのに問題があります。データベースサーバーからインデックスするURLを自動的にダウンロードし、インデックス付きページ情報を含む応答をUDP経由で返信するフォームがあります。私は、着信および発信メッセージを追跡するUDPと呼ばれる静的クラスを持っています。メッセージが受信されるたびに起動するイベントがあります。このフォームは、URLデータベースを保持するサーバー上のプログラムから送信されたメッセージを追跡するためのすべてのインデックスコードフックを含みます。作成されたスレッドとは別のスレッドから呼び出されるイベントハンドラを取得するにはどうすればよいですか?
インデックス作成フォームの前に表示される別のフォームを追加するまで、これは問題なく機能していました。これで、インデックスフォームが別のスレッド(Application.Run()と2番目のスレッド)で開きます。問題は、イベントが発生したときにイベントハンドラが呼び出されなくなることです。
問題は、ここで何が起こっているのか、それを修正するために何ができるのでしょうか?イベントが発生したスレッドハンドラ以外のスレッドでイベントハンドラを呼び出さないクロススレッドセーフティメカニズムが必要であることは確かです。誰かがこれを行う別の方法やこれを回避する方法を知っていますか?事前に感謝...
ここでDynamicInvokeを使用する必要は通常ありません。* target *がこれを行うのがより一般的です... –