当您单击“安全删除硬件”断开外部硬盘驱动器时,Windows XP 会刷新驱动器的缓存和将其关闭。
另一方面,Windows 7 仅刷新缓存,但不会关闭驱动器。
我怎样才能让 Windows 7 像 Windows XP 一样运行?
答案1
在 Windows XP 中,“安全移除”功能将完全关闭相关 USB 端口的电源。(如果设备是自供电的,则其行为取决于设备本身,以回应上述评论。)
在 Windows Vista 及更高版本中,此功能已被有意删除:
Microsoft 支持:在 Windows Vista 中,“安全删除硬件”功能不会停止向 USB 设备供电
原因:在 Windows Vista 中,“安全删除硬件”功能不会停止为 USB 设备供电。根据设计,在 Windows Vista 中,当设备被软删除时,设备所连接的端口不会暂停。
你可以通过以下方式为每个设备 VID&PID 或全局启用它:
Microsoft 支持:对于已禁用或安全移除的 USB 设备,USB 端口仍保持活动状态
解决:要解决此问题,可以设置注册表值,使 Windows Vista、Windows Server 2008、Windows 7 和 Windows Server 2008 R2 恢复到 Windows XP 和 Windows Server 2003 的行为,即禁用软移除 USB 设备所连接的 USB 集线器端口。此解决方法可以基于每个设备应用(针对特定设备的所有实例(供应商 ID、产品 ID 和修订版))或全局应用(针对所有枚举的 USB 设备)。
[...]
全局设置
要对所有枚举的 USB 设备全局应用此解决方法,请将名为的
REG_DWORD
值添加到以下注册表子项中:DisableOnSoftRemove
1
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\usbhub\HubG
使用以下命令添加全局设置值:
reg add HKLM\SYSTEM\CurrentControlSet\Services\usbhub\HubG /v DisableOnSoftRemove /t REG_DWORD /d 1 /f
答案2
我已经在 Firewire 和 eSATA 驱动器上测试过这一点(嗯,是同一个驱动器,但使用这两个不同的连接器),而我的 Seagate 驱动器上的行为只是卸载驱动器,导致外部驱动器的行为就像数据线已断开连接一样 - HDD 的灯开始变暗然后关闭。
但是,驱动器本身实际上并没有关闭,尽管它可能看起来已经关闭(不旋转、没有声音、没有灯光)。这是因为 Windows 中的标准重新安装过程(断开并重新连接 Firewire/eSATA 电缆)将允许重新安装驱动器。
我认为 Mac 上的程序略有不同,您只需在软件中重新安装它即可。(您可能可以在 Windows 7 中通过在设备管理器中禁用/重新启用 USB/FireWire/SATA 设备来执行相同的操作,但这有点麻烦。)但这也要求在弹出磁盘时驱动器不会关闭。
顺便提一下,许多外置硬盘(比如我的硬盘)都没有电源开关。真正关闭电源的唯一方法是断开电源线。而打开电源的方法就是简单地插入电源线。否则,硬盘只会进入待机或睡眠模式。