Windowsでイベントに登録します
-
27-09-2019 - |
質問
こんにちは、PCにメモリスティックが取り付けられたときに何かをしたいです。次に、タイマーを使用して、メモリスティックがプラグされているかどうか(driveInfoを使用するか、WMIをクエリして)を使用できるかどうかをすべてチェックしてください。たとえば、メモリスティックがコンピューターに差し込まれたときはいつでも上昇するイベントをプログラムで使用しますか?
解決
あなたは処理したい wm_devicechange wndprocのメッセージ。それを処理するときは、電話することもできます RegisterDeviceNotification
スティックがきれいに排出されていることを通知するため。
あなたが受け取るとき WM_DEVICECHANGE
, 、あなたはwparamをチェックしたい - DBT_DEVICEARRIVAL
(0x800)はあなたが探しているものです。
C ++では、WNDProcに問題がないはずです。 C#では、メインフォームをオーバーライドしたいと思います wndproc 方法とチェック m.Msg == 0x219
と m.WParam == 0x800
. 。これらのすべてがメモリスティックになるわけではありませんが、これを使用して、タイマーではなくドライブ挿入をチェックするために通知することができます。
所属していません StackOverflow