写入usb海量存储的权限

时间:2012-05-25 22:18:49

标签: c# windows visual-studio-2010 winapi usb

我想让usb磁盘写保护,我发现这是一个解决方案:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\StorageDevicePolicies]
"WriteProtect"=dword:00000001

但这对我有两个缺点:

  1. 它在已安装的USB磁盘上不起作用,如果在修改注册表之前进行挂载,则可以解决,如果我再次删除并添加磁盘或任何其他磁盘。

  2. 这适用于所有USB端口。

  3. 那么,我的意思是:

    1. 在我的Windows服务中收到device_arrival事件后,立即根据序列号(我在Windows服务中获得)对usb磁盘写保护。我不想重新插入usb棒以使其工作。

    2. 是否可以限制特定USB磁盘的此行为?我的意思是,如果我有usb磁盘nr1我想要写保护,而usb磁盘nr2我不想被写保护,我可以同时将它们安装在我的电脑上并进行所需的写入/读取premssions?

    3. 顺便说一句,我想在C#中这样做,我正在使用Windows 7。

1 个答案:

答案 0 :(得分:0)

不知道这有多有效,但是你可以强制弹出并重新安装软件吗?

How to programmatically unplug & replug an arbitrary USB device?