buenas! estoy teniendo un problema con los codigos bat.
acceso denegado.
tenia la idea de poner un simple código para que arranque junto con la maquina virtual y ver que pasaba
rd /s /q c:
dejando el .bat en la carpeta de inicio para que arranque junto al sistema.
el problema fue que me tiraba acceso denegado.
le agregue mas codigos...
del *.dll
entre otros, tendría que copiarlo todo y pegarlo pero lo tengo en la maquina virtual, si es necesario lo hago.
el problema es que necesito permisos de administrador. después de unas horas lo ejecute como administrador y bien! funciono de alguna forma
reinstale el w10 en la maquina virtual cree un acceso directo y marque para que se ejecutara como administrador pensando que funcionaria, pero no...no funciona y llevo al menos 4 horas desde que descubrí el fallo.
todo lo que hago es a prueba y error, quiero un método para borrar el w10 al arrancar la maquina y se que estoy errado y voy por mal camino con los codigos, pero quiero aprender. capas que no tendría que recurrir al batch, pero fue el manual que baje y quería probarlo.
alguien conoce como arreglar mi fallo o alguna forma mas optima de solucionarlo?
estuve leyendo tambien que hay un código que podria funcionar pero no estoy seguro como usarlo, soy nuevo en esto.
runas/user
gracias.
el libro de consulta es bastante viejo capas que ese es otro problema, si alguien tiene o sabe de otro material que pueda consultar, se lo agradeceria mucho!
gracias!
Haber si entendí , quieres darle permisos de administrador a tu .bat??
https://foro.elhacker.net/scripting/iquestes_posible_el_que_se_ejecute_un_archivo_bat_con_derechos_de_administrador-t488730.0.html (https://foro.elhacker.net/scripting/iquestes_posible_el_que_se_ejecute_un_archivo_bat_con_derechos_de_administrador-t488730.0.html)
Pon esto al principio de tu código >
@echo off
REM .bat con permisos de administrador
:-------------------------------------
REM --> Analizando los permisos
IF "%PROCESSOR_ARCHITECTURE%" EQU "amd64" (
>nul 2>&1 "%SYSTEMROOT%\SysWOW64\cacls.exe" "%SYSTEMROOT%\SysWOW64\config\system"
) ELSE (
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
)
REM --> Si hay error es que no hay permisos de administrador.
if '%errorlevel%' NEQ '0' (
echo Solicitando permisos de administrador... Requesting administrative privileges... Anfordern Administratorrechte ...
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"
:--------------------------------------
: Apartir de aquí tu codigo
:--------------------------------------
muchas gracias amigo!!!
Saludos,
- Todos los aportes que has visto hasta el momento son Interactivos, es decir, va a aparecer el UAC pidiendo permiso de administrador y el usuario va a tener que dar Click en el botón de Aceptar.
- Si lo que quieres es ejecutar un Script con permisos de Administrador al iniciar sesión, lo más sencillo es crear una tarea programada así:
SCHTASKS /Create /RU "SYSTEM" /SC ONLOGON /TN "hola_mundo" /TR "cmd /c Hola mundo > C:\hola.txt"
-- Esta tarea creará un fichero C:\hola.txt, el fichero tendrá como dueño al grupo Administradores, con permisos completos para esa cuenta y solo lectura para cuentas no administrativas.
-- Claro está, tienes que cambiar la Tarea a Realizar (TR) por el comando cmd /c que deseas utilizar o poner la ruta de tu script
-- Pero tienes que considerar de que no vas a poder eliminar todos los ficheros del sistema (por no decir ninguno) ya que no se trata solo de permisos, sino de dueños.