禁用UASP 实现"拔出冻结"功能
首先说为什么要禁用UASP,这来自于之前的研究:拥有"保持插入USB驱动器"功能的必备条件
http://bbs.luobotou.org/forum.ph ... tid=12449&fromuid=1
要想实现 USB设备拔出冻结 的功能,UASP必须不能生效。
在支持UASP的环境下,我们可以通过修改注册表禁用它。
准备工作:
优盘内需要安装好WTG系统,并启动配置成功。
下面的操作需要回到本机系统进行。
1.使用ChipGenius看优盘信息,记住VID、PID、设备序列号。
2.如果WTG系统使用VHD(X)模式安装,请先加载VHD(X)。
3.打开注册表编辑器
选择HKEY_LOCAL_MACHINE,打开文件菜单>加载配置单元(加载WTG的注册表)
浏览选择X:\WINDOWS\SYSTEM32\CONFIG\SYSTEM文件(X是优盘盘符或虚拟磁盘加载盘符)
随意设置一个加载项名称,比如wtgsys
4.定位到HKEY_LOCAL_MACHINE\wtgsys\ControlSet001\Enum\USB\VID_XXXX&PID_XXXX\MSFTXXXXXX
(VID和PID是刚才在ChipGenius里面看到的,下面的子项一般是与设备序列号有关)
5.右键点击MSFTXXXXXXX项,点击权限
点击高级按钮
点击所有者后面的更改链接,输入本机用户名,确定
修改后
点确定关掉这个窗口
在刚才安全选项卡中的Everyone权限中 勾选 完全控制-允许 。
6.
进行如下修改
Capabilities的值改为十六进制的94
DeviceDesc改为
@usbstor.inf,%genericbulkonly.devicedesc%;USB Mass Storage DeviceMfg的值改为
@usbstor.inf,%generic.mfg%;Compatible USB storage deviceService的值改为
USBSTOR修改后的样子
7.卸载配置单元,权限可以不改回
8.完成
重新进入WTG系统,拔出冻结功能将生效。
拔出优盘时系统会冻结,重新插入后有“保持插入USB驱动器”的提示,系统不会蓝屏了。
禁用UASP会降低优盘性能,但是正常强度的使用WTG系统 感觉不到什么差异。 感谢分享,到时候试试
我的u盘是cz80,找的时候没发现有MSFTXXXXXXXX这个位置,已经确认VID和PID一致了。
还有在wtg下,HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control下的bootdriverflags值应该为多少?可以麻烦看一下吗 ⑨Anti 发表于 2016-4-6 18:36 static/image/common/back.gif
我的u盘是cz80,找的时候没发现有MSFTXXXXXXXX这个位置,已经确认VID和PID一致了。
还有在wtg下,HKEY_LOCA ...
cz80不支持uasp 不需要更改。
由于识别为可移动磁盘,因此没有拔出冻结功能,改了注册表也没有的
wtg安装工具能否把禁用uasp设置成一个可选项。 8680765 发表于 2016-6-21 10:49
wtg安装工具能否把禁用uasp设置成一个可选项。
这个需要在系统启动一次后更改注册表,不能在安装时更改。
目前没找到其他方法禁用。 nkc3g4 发表于 2016-6-21 10:57
这个需要在系统启动一次后更改注册表,不能在安装时更改。
目前没找到其他方法禁用。 ...
我觉得现在我们要做的就是把这个教程内的东西做到自动化,垂直整合到WTGA程序内,尝试写了个reg,如下,类似这样:
"Capabilities"="94"
"DeviceDesc"="@usbstor.inf,%genericbulkonly.devicedesc%;USB Mass Storage Device"
"Mfg"="@usbstor.inf,%generic.mfg%;Compatible USB storage device"
"Service"="USBSTOR"
但是有个问题就是VID、PID、设备序列号这三项不是统一的,VID和PID可以找ChipFancier那边统一了,开卡工具默认的VID和PID都是统一的,但是设备序列号要是都一样那老用户盘不大好办了,后期的盘可以统一指定一个序列号。然后还有一个方案,就是说WTGA可以检测VID、PID、设备序列号之后单独生成类似上面的那种注册表文件,WTGA程序要是不能检测那能不能集成芯片精灵去检测完了生成reg?
然后就是权限获取问题,这个有没有办法实现,我也不大懂编程这一块。
其次最麻烦的实际是“加载配置单元”这一步,WTG必须启动过一次才能进行修改,这就导致不能在制作WTG的时候直接对注册表进行操作,只能是生成一个reg之后等系统启动之后自动运行货是叫用户手动运行。
@viploser @nkc3g4 @这个显卡不太冷 @8680765