いつもお世話になります。VC++6.0、MFCで開発しています
最近、USBメモリで簡単にパソコンをロックしたりロックを解除したりとありますよ
ね。それらの簡単なものを作ろうかと考えております。そこで以下のような疑問があり
ます。
i) USBメモリが 抜かれたか挿入されたかをどのように判別するのか?APIとかで常
にドライブに関することをタイマーで監視しておくのでしょうか??
ii) 例えば AとBという2つのUSBメモリがあった場合に、これら2つの判別をどのよ
うに判別するのか??
iii) ロック中にキーボードやマウスを利かなくする機能を考えていますが、フックす
る以外に何か方法とかあるでしょうか??
以上 ご教授よろしくお願いします
i) WM_DEVICECHANGE を調べてみよう
ii) USB に限るなら idVendor, idProduct, iSerialNumber をチェック
ただし DDK が必須です...
iii) 何がしたいか次第でしょう。
もっと詳しい情報がほしいですね
1. USBデバイスは作成するのですか?
1-1 ドライバーは作成するのですか?
1-2 WINDOWSXP標準のドライバーを利用するのですか?
2. USBデバイスはメーカ提供のものを利用するのですか?
2-1 ドライバーは改めて作成するのですか?
2-2 メーカ提供のものを利用するのですか?
i) tetrapodさんの言うとおり、「WM_DEVICECHANGE」を使うのがいいかとおもいます。
但し、どんなUSBドライバーを使うのかでも変わってくるかも知れません。
ii) USBデバイスドライバの仕様によって変わります。
iii) 「USBデバイスドライバ」を自作するならば、デバイスが繋がった
情報をもとに「キーボード」や「マウス」を効かなくすれば
いいかと思いますが......
文章がおかしいですね
>1. USBデバイスは作成するのですか?
1. USBデバイスはどうしますか?
>2. USBデバイスはメーカ提供のものを利用するのですか?
2. USBドライバはどうしますか?
すみません、再度書きます
1. USBデバイスは作成するのですか?
作成した場合、ドライバーどうしますか。
1-1 ドライバーは作成するのですか?
1-2 WINDOWSXP標準のドライバーを利用するのですか?
2. USBデバイスはメーカ提供のものを利用するのですか?
作成しなかった場合、ドライバーどうしますか。
2-1 ドライバーは改めて作成するのですか?
2-2 メーカ提供のものを利用するのですか?
tetrapod さん。ITO さん。ありがとうございます。
WM_DEVICECHANGEを調べてみます。すいません私の知識が乏しく ITOさんの言われて
おられる USBデバイスは作成するとかまったく考えていませんでした。もう少しその辺
りから勉強しないといけないみたいです。
とりあえず 現状では解決とさせていただきます。まだ知識がないの勉強してからわか
らないことがあればまたよろしくお願いします
メーカ製のUSBメモリーのデバイスドライバーは、
ほとんどが「USB大容量記憶装置デバイス」です。
そのドライバーの仕様は非公開です。
「USB-ORG」で有料提供される資料の中にあるかも知れません。