从网络驱动器运行批处理脚本

从网络驱动器运行批处理脚本

我正在尝试通过命令行安装打印机,如下所示:

start \\servername\\printername

我必须以管理员身份运行 cmd.exe,否则无法安装驱动程序。直接通过命令行运行效果很好。

但是,我再次将该命令放入.bat 文件中:

名称:printer.bat内容:

start \\servername\\printername

然后我创建了该文件的链接printer.bat.lnk,并在“高级”下的“属性”中勾选了“以管理员身份运行”选项。

这不起作用并会立即被取消。

有什么建议可以解决我的问题吗?

谢谢

答案1

将其添加到批处理脚本的顶部,以使其自动以管理员身份运行

@ECHO OFF

REM --------------------------Start of getting superuser permissions--------------------------------------------

REM Check If the script has admin rights
openfiles.exe 1>nul 2>&1

REM If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
    echo Requesting administrative privileges...
    goto UACPrompt
    ) else ( goto gotAdmin )

REM Now we create temp visual basic script which will run this script again with UAC
: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"

REM Run getadmin.vbs which will run YourScript.bat with UAC
    "%temp%\getadmin.vbs"
REM Delete getadmin.vbs and exit
    del "%temp%\getadmin.vbs"
    exit /B

:gotAdmin

REM --------------------------End of getting superuser permissions--------------------------------------------

相关内容