■93023 / inTopicNo.3) |
Re[2]: USB接続の検出方法 |
□投稿者/ じょこびっち (26回)-(2019/11/15(Fri) 09:16:24)
|
■No93017 (魔界の仮面弁士 さん) に返信 > > 過去ログとしては No66415 , No78061 , No91134 あたりでしょうか。 > WndProc メソッドをオーバーライドして、WM_DEVICECHANGE メッセージ (0x219) を捉えたら拾えるかも。 > OS 側でデバイスとして認識されない、給電目的で繋がれるデバイスなどは駄目でしょうけれど…。
WM_DEVICECHANGEは捉える事が出来ました。 でも、DBT_DEVICEARRIVALやDBT_DEVICEREMOVECOMPLETEは捉えられません。 ちなみにDBT_DEVICEARRIVALをDBT_DEVNODES_CHANGED(0x0007)に書き換えたら捉えられました。 DBT_DEVICEARRIVALやDBT_DEVICEREMOVECOMPLETEは無理なのでしょうか?
protected override void WndProc(ref Message m) { if (m.Msg == 0x219) { if (m.WParam.ToInt32() == 0x8000) { MessageBox.Show("8000"); } else if (m.WParam.ToInt32() == 0x8004) { MessageBox.Show("8004"); } } base.WndProc(ref m); }
> ここで想定しているデバイスはどういったものでしょうか。 > > 電源スイッチのある可能性が高そうなデバイスとしては、プリンターとか、 > USB 接続の Wi-Fi ルーターとか、ビデオカメラなど…?
オシロスコープです。 USBにオシロがつながっているなどの特定は難しいのでしょうか?
|
|