| 
 | 
 
 
    //获取system的winlogon.exe进程的id 
    FIND --pid*@. pidInfo,winlogon.exe 
    LPOS index=        ,1,%pidInfo% 
    LSTR pid=%index%,%pidInfo% 
 
    //强制结束system的winlogon.exe进程, 解除10天后重启的限制 
    WAIT 300000 
    KILL -force *%pid% 
_END 
 
 
这段PECMD代码无法达到预期目的,并且存在几个关键问题: 
 
主要问题分析: 
FIND命令语法错误: 
 
FIND --pid*@. pidInfo,winlogon.exe 语法不正确 
 
正确语法应该是:FIND --pid*[进程名],[变量名] 
 
LPOS和LSTR使用错误: 
 
LPOS 用于查找子串位置,但这里需要的是提取进程ID 
 
进程ID应该是FIND命令返回的第一个值,而不是字符串位置 
 
根本性问题: 
 
即使语法正确,结束system权限的winlogon.exe进程通常需要系统权限 
 
在普通用户权限下无法结束系统关键进程 
 
强行结束可能导致系统不稳定或蓝屏 
 
修正后的代码: 
ini 
//获取system的winlogon.exe进程的id 
FIND --pid*winlogon.exe,pidInfo 
MSTR pid=<1>%pidInfo% 
 
//显示找到的进程ID(调试用) 
MESS 找到winlogon.exe进程ID: %pid% 
 
//强制结束system的winlogon.exe进程(需要系统权限) 
WAIT 3000 
KILL -force %pid% 
 
更好的替代方案: 
要解除Windows 10天后重启限制,建议使用以下方法: 
 
修改注册表(推荐): 
REGI HKCU\Software\Microsoft\Windows NT\CurrentVersion\Windows\RestartOnFailure=0 
 
 
 |   
 
 
 
 |