0

.dllが実行する各ステップの後にインターフェイスを更新する方法を見つけようとしていますが、複数の.dll(それぞれが異なる時間に実行されている)が存在する可能性があるため、それらをアタッチする気がしません。 UIレイヤー。

これは私の最新のスレッドですが、アーキテクチャが非常に混乱していたため、通知ロジックをすでに削除しました。

私の目標:

  1. UIは.dllを動的に呼び出します(OK、これは機能します)
  2. .dll(この場合はクローラー)は、既知の形式を使用して、その作業を実行し、すべてのステップをファイルに記録します。(OK、これはすでに行われています)

  3. UIレイヤーは、どういうわけか、ファイルの変更を「認識」または「定期的にチェック」し、ユーザーインターフェイス(ログボックスまたは私たち)にファイルの内容を表示するためにそれを解析します

私は現時点で3番目を達成しようとしていますが、.dllがあまりにもアタッチされていない/インターフェイスレイヤーに依存していない方法のヒントはありますか?

質問:

  1. 更新するためにインターフェイスレイヤー内でファイルを読み取ることの短所はありますか?

  2. 「ファイルが変更された」などのときに処理するためにチェックできるイベントはありますか?

  3. イベントがない場合、ファイルを非同期でチェックし、読み取り、解析して、結果をUIに表示できますか?

明確で最善のアプローチは何でしょうか?

観察:

ここでコールバックを使用することはできません。これは、URLレイヤーの「深さ」、イベントの発生と上位レイヤーへのスローにより、ユーザーインターフェイス自体に到達するまでに5〜6レイヤーかかるためです。

前もって感謝します!

4

1 に答える 1

4

FileSystemWatcherあなたを整理する必要があります

于 2012-06-15T14:40:29.377 に答える