如何编写一个BAT文件来始终以pipe理员模式运行?
我在我的BAT文件中有这条线:
"Example1Server.exe"
我想以pipe理员模式执行此操作。 如何修改蝙蝠代码以pipe理员身份运行此?
它是否正确? 我需要把报价?
runas /user:Administrator invis.vbs Example1Server.exe
您使用runas
以特定用户的身份启动程序:
runas /user:Administrator Example1Server.exe
另一个答案要求您inputpipe理员帐户密码。 此外,pipe理员组中的帐户下运行不同于pipe理员运行,请参阅维基百科上的UAC
Windows 7说明
为了以pipe理员身份运行,为batch file创build一个快捷方式。
- 右键单击该batch file,然后单击复制
- 导航到您想要的快捷方式
- 右键点击目录的背景
- select粘贴快捷方式
然后你可以设置以pipe理员身份运行的快捷方式:
- 右键单击该快捷方式
- select属性
- 在快捷方式选项卡中,单击高级
- 选中checkbox“以pipe理员身份运行”
- 点击确定,确定
现在,当你双击快捷方式时,它会提示你进行UAC确认,然后以pipe理员身份运行 (正如我上面所说的,它不同于在pipe理员组中的帐户下运行)
检查下面的截图
注意:如果以pipe理员身份运行,当前目录(path)将不会与bat文件相同。 这在许多情况下会导致一些问题,即bat文件引用它旁边的相关文件。 例如,在我的Windows 7中,目录将是SYSTEM32而不是bat文件位置! 要解决它 ,你应该使用
cd %~dp0
或更好
pushd %~dp0
以确保目录与bat文件位于同一path。
如果您可以使用第三方实用程序,则这是一个elevate
命令行实用程序 。
这是用法描述:
Usage: Elevate [-?|-wait|-k] prog [args] -? - Shows this help -wait - Waits until prog terminates -k - Starts the the %COMSPEC% environment variable value and executes prog in it (CMD.EXE, 4NT.EXE, etc.) prog - The program to execute args - Optional command line arguments to prog
使用此工具将batch file转换为.exe: http : //www.battoexeconverter.com/然后您可以以pipe理员身份运行它
我想我有一个解决密码问题。 这个单一的论点真的很棒。 它要求密码一次,而不是再次要求它。 即使你把它放到另一个程序,它也不会要求input密码。 这里是:
runas /user:Administrator /savecred Example1Server.exe
您可以使用nircmd.exe的提升命令
NirCmd命令参考 – 提升
elevate [Program] {Command-Line Parameters}
仅适用于Windows Vista / 7/2008:以pipe理员权限运行程序。 当[程序]包含一个或多个空格字符时,必须将其放在引号中。
例子:
elevate notepad.exe elevate notepad.exe C:\Windows\System32\Drivers\etc\HOSTS elevate "c:\program files\my software\abc.exe"
PS:我用它赢得10,它的工作原理
go get github.com/mattn/sudo
然后
sudo Example1Server.exe