WIN7 BETA版本从7月1日开始,启动2小时后,就会蓝屏重启。
蓝屏代码为:0x00000098
参考WINDBG帮助文件中的解释:
Bug Check 0x98: END_OF_NT_EVALUATION_PERIOD
The END_OF_NT_EVALUATION_PERIOD bug check has a value of 0x00000098. This bug check indicates that the trial period for the Microsoft Windows operating system has ended.
如何不让其过期:
在ntoskrnl中搜索特征:68 68 02 00 c0
搜索到后向上搜索72 XX 38 YY (XX YY为任意值)
找到的地址假设为i,找到后将i+2的位置修改为jmp i+xx+2
实际是内核使用KeInitializeTimerEx创建了一个Timer,然后计算当前时间,到2小时,开始验证license。如果发现时间过期了,则先创建一个系统线程,通过ExRaiseHardError触发一个特殊的内核异常代码。然后再一次则调用PoShutdownBugCheck引发一个蓝屏关机