Saltar al contenido

Cómo crear un archivo por lotes para ejecutar cmd como administrador

Solución:

¡Este script hace el truco! Solo pégalo en la parte superior de tu archivo bat. Si desea revisar la salida de su secuencia de comandos, agregue un comando de “pausa” en la parte inferior de su archivo por lotes.

Este script ahora está ligeramente editado para admitir argumentos de línea de comando.

@echo off
:: BatchGotAdmin
::-------------------------------------
REM  --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%system32cacls.exe" "%SYSTEMROOT%system32configsystem"

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"
::--------------------------------------

::ENTER YOUR CODE BELOW:

Es posible que primero tenga que usar otro archivo por lotes para iniciar el segundo con derechos de administrador.

En el primer uso

runas /noprofile /user:mymachineadministrator yourbatchfile.bat

Después de leer más, debe poder escribir la contraseña cuando se le solicite. No puede canalizar la contraseña ya que esta función se bloqueó por razones de seguridad.

Puede tener más suerte con psexec.

prensa control+Cambio y haga doble clic en un acceso directo para ejecutarlo como un proceso elevado.

También funciona desde el menú de inicio.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *