7

USBポートやFirewireポートなどを介して新しいドライブがWindowsシステムに接続されたことを検出する必要があります。WM_DEVICECHANGEメッセージを認識していますが、これを使用するにはウィンドウを開く必要があります。新しいドライブが接続されたことを検出するバックグラウンドプロセスをC#で作成する方法はありますか?

背景情報:会社のリムーバブルドライブからワームを削除するためにこのアプリを作成したいと思います。通常のウイルス対策ソフトウェアはそれを削除できません。ワームを削除するスクリプトがありますが、手動で実行する必要があります。これは、発生を封じ込めるには十分ではありません。

4

4 に答える 4

4

Windowsサービスはトリックを行う必要があります

CodeProject DriveDetectorをサービスとして作り直してみてください。そうすれば、必要なものが手に入ります。

于 2009-11-23T15:05:44.740 に答える
1

サブスクライブしRegisterDeviceNotificationて、サービスステータスハンドルにバインドする必要があります。http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/9ae4478a-1133-44ba-8a1c-3e4be3856e37も参照してください。

これをどのように実装するかはよくわかりませんが、かなり前のことです。

于 2009-11-23T15:10:25.217 に答える
0

このブログ投稿は、システムイベントの処理方法を示しています。https://web.archive.org/web/1/http: //blogs.techrepublic%2ecom%2ecom/howdoi/?p=135多分あなたはそれをイベントに使用することができますあなたが扱いたい

于 2009-11-23T15:10:07.400 に答える
0

ウィンドウハンドルまたはサービスステータスハンドルで機能するため、非表示のウィンドウを作成したり、サービスを実行したりできます。

于 2009-11-23T15:11:52.077 に答える