2013-04-15 53 views
1

我有一个bat文件,可以运行超过一个小时,因为它所做的事情。我可以让它以隐藏方式和管理模式运行吗?运行蝙蝠隐藏并作为管理员同时

我已经找到了一种方法,使其运行隐藏的VBS:

Set WshShell = CreateObject("WScript.Shell") 

WshShell.Run chr(34) & "C:\Users\Ab\Desktop\vi\nove.bat" & Chr(34), 0 

Set WshShell = Nothing 

我更愿意找到一种方法,把它们放在里面的批处理文件,但我认为这是不可能的这样一个vbs文件将是好吧。

回答

0

我认为Shell.Application对象的runas动词将以提升的权限运行。你可以当我运行它,我运行它通过你已经在你当前的脚本这样做同样的方式隐藏,通过设置window手柄为0

set shell=CreateObject("Shell.Application") 
' shell.ShellExecute "application", "arguments", "path", "verb", window 
shell.ShellExecute "move.bat",,"C:\Users\Ab\Desktop\vi\", "runas", 0 
set shell=nothing 
+0

谢谢配合它运行ok.Only一个问题得到一个弹出窗口说用户帐户控制,并要求我确认运行(我猜它是作为管理员运行)有没有办法绕过它?我的意思是不询问确认运行 – user2237380

+0

当然。关闭UAC。如果以管理员身份启动'cmd'控制台(右键单击 - >以管理员身份运行),它可能不会提示升级。我不确定。我的UAC在我的机器上关闭了,所以我无法测试这个理论。 – rojo

+0

如果此答案回答了您的问题,请考虑[正式接受我的答案](http://meta.stackexchange.com/a/5235/187716)。 – rojo