|
测试了,
- :Drvinst_10.0.14393_x64
- call :PATCH 8BD8 85C0 7508 8B06
- goto :EOF
复制代码
代码没有问题。这个帖子的内容没问题。
=========================================
你没有看日志?没有添加pause确认自己的代码被运行?也没有提取PE的系统文件比较?
“提示内存位置访问无效”错误,是因为你没有成功修改。
因为默认先使用通用补丁(DrvInstPatch.exe),不过这个补丁貌似对低版本改的不太对。
Applying Patch:.\Patch_drvinst\main.bat
X:\Windows\System32\drvinst.exe was successfully patched!
这里成功了,就没继续。
开测试,正常构建时的日志是:
Extracting file data: 181 KiB of 181 KiB (100%) done
Done extracting files.
Applying Patch:.\Patch_drvinst\main.bat
X\Windows\INF\netrndis.inf
X\Windows\INF\rndismp6.sys
X\Windows\INF\usb80236.sys
X\Windows\INF\wceisvista.inf
复制了 4 个文件
Assemble Patch ...
Writing to X:\Windows\System32\drvinst.exe.org...
Writing to X:\Windows\System32\drvinst.exe...
Done: 1 matches.
正在比较文件 X:\WINDOWS\SYSTEM32\drvinst.exe.org 和 X:\WINDOWS\SYSTEM32\DRVINST.EXE
00006802: 8B 33
00006803: D8 C0
00006804: 85 8B
00006805: C0 D8
00006806: 75 90
00006807: 08 90
正确的修改是添加一行下面的代码,在通用补丁执行前跳转
- if %VER[3]% LSS 15063 goto :AssemblePatch
复制代码
另外,默认的测试驱动就是RNDIS驱动。。。是系统自带的,
仅当DRIVERS是“未设置”的时候,才需要修改drvinst.exe,
合并和替换的话,自动就可以正常安装驱动,达不到测试的目的。
|
|