楼主:
piligo (霹雳狗)
2014-11-07 22:22:15※ 引述《piligo (霹雳狗)》之铭言:
: 请问,假设有一支批次(abc.cmd)需要提升权限才能运作
: 透过系统内建的模式一会有闪退状况,刚好外挂工具都是采用模式一
: 不知是否有外挂工具是支援模式二的
: 我需要的外挂是指直接把要提升的档案拖曳到外挂程式就自动带出模式二的验证画面
: 模式一
: 透过指令 runas /user:帐号 abc.cmd 会闪退
: 变成还要runas /user:帐号 cmd 带出提升权限后的cmd
: 在切到批次当下的目录执行abc.cmd这样才能成功执行
: 模式二
: 在abc.cmd上面透过shift加右键执行以不同使用者身分执行 就可以直接提升权限
: 刚刚找到的一只外挂,可惜他会把路径导入C:\Windows\system32,造成运作错乱
: http://technet.microsoft.com/en-us/sysinternals/cc300361.aspx
: 谢谢
我终于知道模式一闪退的原因了
因为提升权限后目录会被切换到c:\windows\system32
abc.cmd一定不会摆在那边,所以找不到abc.com就闪退了
假设abc.com放在c:\temp,变成要改成runas /user:帐号 "cmd /c c:\temp\abc.com"
但是又延伸另一个问题,批次虽然成功执行,但是abc.com还要呼叫c:\temp底下的
相关功能程式,造成会跑去system32底下找,所以又执行失败
最后又被我找到解决方法,只要在abc.cmd内容加入
REM =========== top ===========
FOR /D %%I IN (%0) DO CD /d %%~dpI
REM ========= bottom ===========
就解决了
这样连外挂程式都免了