0

Windows 7 ホーム プレミアム
ビジュアル ベーシック

プログラムの実行を一時停止する方法はありますが、イベント ハンドラーは実行し続けますか?

私の Visual Basic コンソール アプリケーションは、ファイル イベントを監視し、使い慣れたイベント ハンドラーでイベントを処理します。

現在のアルゴリズム:
1. FileSystemWatcher を作成します
。 2. イベント ハンドラーをセットアップします
。 3. ユーザーからのコンソール入力を待ってから終了します。

イベント ハンドラーがイベントに反応し続けている間、フォアグラウンドの実行を一時停止するシステム コールに最後のステップを置き換えることはできますか?

コードの概要を次に示します (多くの行が削除されています)。

    Dim watcher As New FileSystemWatcher()                  'Create a new FileSystemWatcher

    AddHandler watcher.Changed, AddressOf OnChanged         'Add event handler  
    watcher.EnableRaisingEvents = True                      'Begin watching  

    'I wish to replace this with a system call to suspend  
    'execution, but keep the event handlers running.  
    While Chr(Console.Read()) <> "q"c                       'Wait for the user to quit  
    End While
4

1 に答える 1

0

サービスを作ろうとしているようです。そのための最も簡単な方法は、おそらく "Windows サービス" テンプレートに基づいて新しいプロジェクトを作成し、既存のコードを移行することです。

MSDN ドキュメント: http://msdn.microsoft.com/en-us/library/d56de412.aspx

于 2013-07-30T01:22:58.793 に答える