Ejecutar el archivo bat al inicio como administrador en Windows 7


37

Actualmente estoy ejecutando un script de inicio en forma de un archivo bat con éxito en Windows 7 (he insertado una nueva entrada de clave de registro con la ruta del archivo bat como valor en

Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run).

Ahora necesito ejecutar otro archivo bat al inicio, pero con derechos elevados (como administrador) y sin confirmar manualmente un mensaje.

¿Cómo puedo lograr esto, preferiblemente sin programas externos?


¿Este tiene una solución? serverfault.com/questions/429364/…
Radek

Estoy confundido. ¿No es la capacidad de eludir el aviso de UAC una gran preocupación de seguridad? ¿Acaso eso no vence el propósito del aviso incluso existente?
Kyle Delaney

Respuestas:


24

Consulte este artículo: Haga que Vista inicie programas restringidos de UAC al inicio con el Programador de tareas .

Este artículo muestra cómo usar el Programador de tareas para iniciar programas de inicio con privilegios elevados. Es posible que se requieran algunos pequeños cambios en su caso, pero el artículo está bien escrito con capturas de pantalla.


3
Sería bueno si esto no fuera solo un enlace. :)
Ƭᴇcʜιᴇ007

1
@ Ƭᴇcʜιᴇ007: Hay muchos tutoriales completos para este conocido procedimiento, que todavía es válido hoy desde Vista. Esta es una respuesta muy antigua y probablemente habría respondido con más detalle hoy, pero tampoco estoy seguro de estar de acuerdo con la última tendencia en SU ​​de insistir en respuestas largas tipo tutorial. No todas las respuestas deben ser un mini tutorial, y esta respuesta describe el principio y el enlace es a un sitio web sólido.
harrymc

2
¡Siento que esto podría convertirse en una batalla de titanes! Pero en realidad, estoy de acuerdo con @ Ƭᴇcʜιᴇ007 en esto: los enlaces son buenos, pero pueden ir mal, lo que hace que una respuesta como esta no tenga sentido en el futuro.
music2myear

1
@ music2myear: ¡La consulta de Google tiene unos 369,000 resultados! Muchos son de una calidad mucho mejor de lo que podría / haría.
harrymc

2
Luego, en lugar de publicar una "respuesta" que es esencialmente una simple respuesta, podría haber publicado un enlace a la consulta de Google como comentario a la respuesta original. Pero entonces, no obtienes representante por publicar comentarios, ¿verdad?
Synetech

4

Haga dos archivos por lotes:

StartAs.bat contiene algo en la línea de:

runas /user:SomeLocalAdminAccount c:\Users\MyUser\StartupWhat.bat

StartWhat.bat contiene los comandos que desea ejecutar.


1
Todavía pide que el archivo se ejecute con privilegios elevados
Joe Taylor

3

¿Has pensado en un enfoque diferente? O bien una política de grupo pura para la configuración de registro equivalente, o bien configurar el archivo por lotes para que se ejecute como una política de grupo. Tal vez incluso podría ejecutarlo como un script de computadora, en lugar de un script de usuario.

Comience con gpedit.msc. Sin embargo, necesita Ultimate o una de las otras ediciones de gama alta.


2

Utilidad AutoExnt, del Kit de recursos.

El servicio AutoExNT permite que un administrador configure una computadora basada en Windows para ejecutar un archivo por lotes personalizado al iniciar la computadora por primera vez. Además, no es necesario que un usuario o administrador inicie sesión en el momento en que se ejecuta este archivo por lotes personalizado.


2

hstart.exe: reemplazo de start.exe de terceros en http://www.ntwind.com/software/hstart.html

La invocación es un poco molesta, pero funciona muy bien.


Tenga precaución al recomendar software. Tal como está escrito, su respuesta puede verse como spam. Su respuesta debe incluir una descripción del software y cómo aborda la pregunta. Más información: ¿Cómo recomiendo el software en mis respuestas?
bwDraco

Gracias pero no gracias. No considero mi responsabilidad si las personas asumen falsamente cosas incorrectas debido a su propio pesimismo y amargura. Tuve este problema, y ​​esa fue mi solución.
ClioCJS

1

runas / usuario: SomeLocalAdminAccount

Aquí debe ser así:

runas /noprofile /user:mymachine\administrator cmd

runas /profile /env /user:mydomain\admin "mmc %windir%\system32\dsa.msc

runas /env /user:user@domain.microsoft.com "notepad \"my file.txt\""

1
Todavía pide que el archivo se ejecute con privilegios elevados
Joe Taylor

1

Tal vez UACPass (gratis) lo resuelva:

  • Instalar el programa.
  • Abra la ventana UACPass.
  • Arrastre hacia él el programa que pretende ejecutar en el arranque.

Hecho. Este programa ahora debería ejecutarse como administrador sin solicitud de UAC.
El programa incluso tiene una opción paraadd to startup :-D.

Su programa solo se ejecutará después del inicio de sesión (o eso creo).


-1

También puede hacer un acceso directo y especificar que el archivo del acceso directo se ejecute elevado.

(Está en un cuadro de opciones avanzadas).


Esto no funciona para accesos directos a archivos bat. Intentalo.
Joe Taylor

@JoeTaylor ¿Y qué tal crear un acceso directo a cmd.exe y darle el archivo bat en cmdline?
Werner Henze

@werner Henze: ¿lo has probado?
Joe Taylor

@ JoeTaylor: Esto no funciona para los accesos directos a archivos bat. ¿Qué quieres decir exactamente con esto? La casilla de verificación "Ejecutar como administrador" está disponible para accesos directos a un archivo bat y accesos directos a cmd.exe (ambos probados hace unos minutos). Pero: el interlocutor no quiere la solicitud de UAC, y la casilla de verificación activará la solicitud de UAC (según la configuración de UAC).
Werner Henze

La ejecución es elevada, mientras que suprimir las indicaciones de UAC no funciona de la manera en que la respuesta lo pretende. A eso me refería. Por lo tanto, no es la respuesta que estaba buscando el OP.
Joe Taylor
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.