Ant*_*ntp 60 windows-7 batch-file
我想知道双击批处理文件时是否可以自动以管理员身份打开批处理文件,因为这些命令需要以管理员权限运行。
注意:我已经知道右键单击文件并单击Run As Administrator的解决方案,但这不是自动解决方案。
101*_*001 54
是的,您可以使用管理权限运行批处理文件。不幸的是,您不能直接从它自己的批处理文件中执行此操作。您需要首先创建该批处理文件的快捷方式并更改该快捷方式的属性才能使其工作。
要创建快捷方式,有多种方法,但最简单和最快的方法是使用上下文菜单中的“发送到”选项。
Right click batch file > Send to > Desktop (create shortcut)
Run Code Online (Sandbox Code Playgroud)
当然,您可以将快捷方式发送到您想要的任何位置。要提升批处理文件以管理员身份运行,请按照以下步骤操作:
小智 36
REM --add the following to the top of your bat file--
@echo off
:: BatchGotAdmin
:-------------------------------------
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params = %*:"=""
echo UAC.ShellExecute "cmd.exe", "/c %~s0 %params%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
del "%temp%\getadmin.vbs"
exit /B
:gotAdmin
pushd "%CD%"
CD /D "%~dp0"
:--------------------------------------
Run Code Online (Sandbox Code Playgroud)
在 Windows 7 上
创建该批处理文件的快捷方式
右键单击快捷方式文件
单击高级按钮以找到以管理员身份运行的复选框
检查下面的屏幕截图

小智 5
接受的答案确实有效。但是我发现在Windows 7中,每次点击快捷方式时,我都不得不忍受UAC对话框。恕我直言,这大大降低了这个问题中的“自动”!
然后我发现在我自己的情况下,有.bat问题的文件是由Task Scheduler运行的。在这种情况下,检查任务选项卡Run with highest privileges上的General选项可以很好地解决问题。在.bat随后没有任何麻烦以管理员身份运行。
PS:我没有意识到我不能在这个答案上上传图片,因为我现在有一个漂亮的小截图!或者我可以吗?
| 归档时间: |
|
| 查看次数: |
368486 次 |
| 最近记录: |