无论我做什么,我似乎都无法使Windows 10(64位,内部版本1607)在自定义SDB中应用任何补丁(如2014年Jon Erickson的文章所述)。我正在使用Jon的sdb-explorer从以下来源生成补丁SDB(假设calc.exe的PE校验和为0000BE15,入口点RVA为0x2900):

!sdbpatch
APP=calc.exe
DBNAME=calc_test
P:calc.exe,0xbe15
R:calc.exe,0x2900,CCCCCCC3
!endsdbpatch


确切的命令是:

sdb-explorer.exe -C calc-test.txt -o calc-test.sdb
sdbinst.exe -p calc-test.sdb


安装成功,但没有效果-calc.exe仍然启动并正常运行。

因此,我的问题-在Windows 10中是否删除了PATCH机制或使其瘫痪了?

出于正当理由,我需要此操作-我正在尝试修补触摸板实用程序,该实用程序发布了在Windows 10 UWP应用程序中不起作用的鼠标滚轮消息,但该实用程序已使用uiAccess =“ true”签名,因此我无法只需修补可执行文件即可。

#1 楼

从乔恩(Jon)的初步调查来看,似乎在Windows 10上确实已删除了修补功能: 10版本没有功能SeiApplyPatch。这是负责执行PATCH的任务。微软似乎已删除此功能。