根据用户是否点击“是”或“否”设置退出路径

根据用户是否点击“是”或“否”设置退出路径

我有一个请求 UAC 权限的批处理文件。当 UAC 框弹出并且用户单击按钮时,no我希望显示消息No administration privileges granted. Now exiting.,然后等待三秒钟再退出。目前,如果用户单击yes按钮,UAC 提示会起作用,但在后台的单独窗口中显示我上面应用的退出消息。

我试图在文件末尾创建一个 IF 语句来指定根据“是/否”按下来发生哪种退出。

本质上,如果用户点击,我想快速退出其他命令提示符窗口yes,或者在退出前三秒钟显示退出消息。有什么想法吗?

  IF '%params%' EQU == 1 (
    ECHO No administration privileges granted. Now exiting.
    TIMEOUT 3 >NUL
    EXIT /B
) ELSE ( EXIT )
@ECHO OFF
REM Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"

REM Check if UAC has been granted 
IF '%errorlevel%' EQU '0' (
    GOTO Administration_Granted
) ELSE ( GOTO UAC_Prompt )

REM Request administration privileges
  :UAC_Prompt
  ECHO Requesting administration privileges.
  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"
  CLS

  IF "%params%"=="1" (
    ECHO No administration privileges granted. Now exiting.
    TIMEOUT 3 >NUL
    EXIT /B
) ELSE ( EXIT )



REM Administration Granted
:Administration_Granted
ECHO Administration privileges have been granted
TIMEOUT 2 >NUL
PAUSE

答案1

我打算去另一个网站提问,因为我的问题被无缘无故地降级了,评论消失了,我因为使用​​“请”和“谢谢”而被责骂。这不是一个论坛,并不意味着不应该讲礼貌...

相关内容