USBディスクを書き込み禁止にしたいのですが、解決策としてこれを行うことがわかりました。
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies]
"WriteProtect"=dword:00000001
しかし、これには2つの欠点があります。
すでにマウントされているUSBディスクでは機能しません。レジストリを変更する前にマウントしている場合は、ディスクまたは他のディスクを削除して再度追加しても機能します。
これはすべてのUSBポートで機能します。
だから、私は何をすべきか:
Windowsサービスでdevice_arrivalイベントを取得した直後に、シリアル番号(Windowsサービスで取得)に基づいてUSBディスクを書き込み保護します。それが機能するためにUSBスティックを再挿入する必要はありません。
そして、特定のUSBディスクに対してこの動作を制限することは可能でしょうか?つまり、書き込み保護したいusb disk nr1と、書き込み保護したくないusb disk nr2がある場合、目的の書き込み/読み取りと同時に両方をPCにマウントできますか?前提?
ちなみに、これはC#で行いたいので、Windows7で作業しています。