微软已经证实,Windows 11也受到一个与串行先进技术附件(SATA)有关的老旧错误的影响。
该错误与固件有关,其中内部SATA驱动器,无论是较慢的机械硬盘驱动器(HDD)还是较快的基于NAND闪存的固态驱动器(SSD),在Windows任务栏中被误读为可移动媒体。
这个问题真的很古老(按技术标准),因为微软说它影响到任何比Windows Vista更新的系统,即Windows 7、Windows 8、Windows 8.1、Windows 10,以及最后的Windows 11。
在一份最新更新的有关该问题的支持文件上,微软写道:
症状
内部SATA设备(HDD或SSD)可能在任务栏中显示为可移动媒体。
原因
一个设备是否被认为是可移动的,是由你的系统的BIOS以及它如何标记主板上的各种SATA端口决定的。驱动程序直接检查SATA端口,并将连接到这些标记为"外部"的端口的设备视为可移动设备。并非所有的存储驱动程序都这样做,这可能是造成损坏或数据丢失的潜在原因。
微软还提供了一个使用高架命令提示符CLI来解决这个问题的方法。这个解决方案也适用于Windows 8、8.1和Windows 10:
解决方法
首先,检查并安装电脑制造商提供的 BIOS 更新。 如果没有可用,可以按照以下步骤替代收件箱驱动程序在某些端口上显示设备的方式:
- 使用管理员权限打开命令提示符。
- 在命令提示符窗口中,在按 Enter 中键入以下命令:devmgmt.msc
- 在“磁盘驱动器”下,通过右键单击并选择“属性”,确定希望收件箱驱动程序考虑此设备的内部和打开属性的 SATA 设备。
- 请注意以下示例) 的属性概述 (“1”中的总线号。
- 对于 Windows 7:
- 在之前打开的命令提示符中键入以下命令,然后按 Enter:
reg.exe添加“HKLM\SYSTEM\CurrentControlSet\Services\msahci\Controller0\Channelx\” /f /v TreatAsInternalPort /t REG_DWORD /d 0x00000001
其中 xcorresponds 到步骤 4 中记录的总线编号。
- 在之前打开的命令提示符中键入以下命令,然后按 Enter:
- 对于Windows 8及更高版本:
- 在以前打开的命令提示符中键入以下命令,并按 Enter:
reg.exe添加“HKLM\SYSTEM\CurrentControlSet\Services\storahci\Parameters\Device” /f /v TreatAsInternalPort /t REG_MULTI_SZ /d x
其中 x 对应于步骤 4 中记录的总线编号。
- 在以前打开的命令提示符中键入以下命令,并按 Enter:
你可以在微软网站的支持文章中找到更多细节: