08.02.2022 Views

batch-file-es Windows

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

6. Haga clic en "Aceptar" dos veces.

Solicitando privilegios elevados en tiempo de ejecución

El siguiente archivo por lotes abrirá una solicitud de UAC que le permitirá aceptar privilegios de

administrador elevados para la sesión por lotes. Agregue su código de tareas a :usercode sección

:usercode del lote, para que se ejecuten con privilegios elevados.

@echo off

setlocal EnableDelayedExpansion

:: test and acquire admin rights

cd /d %~dp0 & echo/

if not "%1"=="UAC" (

>nul 2>&1 net file && echo Got admin rights || (echo No admin rights & ^

MSHTA "javascript: var shell = new ActiveXObject('shell.application');

shell.ShellExecute("%~snx0", 'UAC', '', 'runas', 1);close();"))

:: re-test admin rights

echo/ & >nul 2>&1 net file && (echo Got admin rights & echo/) || (echo No admin rights.

Exiting... & goto :end)

:usercode

:: add your code here

echo Performing admin tasks

echo Hello >C:\test.txt

:end

timeout /t 5 >nul

exit /b

Solicitar privilegios elevados de tiempo de ejecución sin solicitud de UAC

Como ejemplo anterior, este script solicita elevación si es necesario. Le pedimos al usuario las

credenciales para evitar el aviso de UAC.

@echo off

cls & set "user=" & set "pass="

https://riptutorial.com/es/home 71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!