• ベストアンサー

リムーバブルドライブの検出

USBメモリなどをPCに挿した時 ドライブが追加されたことを 自前のプログラム内で 検出する方法は何があるでしょうか? 自分で一定時間ごとに ドライブ一覧を列挙して知ることはできますが これは、あまりにも感がしますので 他にスマートな方法があれば教えて頂けないでしょうか 何かヒント的なものでもかまいませんので よろしくお願いいたします

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

Shellから呼び出してもらえばいいでしょう。 SHChangeNotifyRegisterというのがあります。

A1000
質問者

お礼

回答ありがとうございます 少し調べてみたところ WM_DEVICECHANGEで捕捉出来ないものも 検出できるようで、使えそうです

その他の回答 (1)

  • Bonjin
  • ベストアンサー率43% (418/971)
回答No.1

環境が書いていないのでWindowsだと思って回答します。 USBなどを接続すればWindows内で何かしらのメッセージがやり取りされるはずです。それを調べれば接続時にドライブを検出するようにできるのでは内でしょうか?

A1000
質問者

お礼

回答ありがとうございます そういえば環境書いてませんでした Windows XPが対象でした 調べてみたところ WM_DEVICECHANGEメッセージが使えそうです

関連するQ&A