¿Cómo ejecutar un programa como administrador al inicio en Windows 10? [duplicar]

41

Esta pregunta ya tiene una respuesta aquí:

Tenemos un programa que tiene problemas para iniciarse en Windows 10. Si el programa NO se ejecuta como administrador, aparece un mensaje "Acceso denegado" justo antes de que comience. Si ejecutamos el programa como administrador, NO aparece ningún mensaje de error y se carga normalmente. Sin embargo, ahora el programa no se ejecutará al INICIAR. Por lo tanto, debemos ejecutar nuestro programa como administrador y poder ejecutarlo automáticamente al inicio.

Actualización: aunque mi pregunta y la pregunta duplicada pueden ser las mismas, pero las respuestas proporcionadas para ambas preguntas no resolvieron mi problema. El Programador de tareas solo inicia mi aplicación o programa como un proceso en segundo plano. Por lo tanto, mi programa no se carga. Sin embargo, veo mi proceso en el administrador de tareas en proceso en segundo plano. Eso es todo.

ThN
fuente
@Moab: ¿Puedes confirmar que el duplicado se aplica a Win 10?
Fixer1234
@Ramhound Sí, pero el programador de tareas no inicia mi programa normalmente sino como un proceso en segundo plano. Eso no es lo que estoy buscando. ¿Me estoy perdiendo de algo?
Jue
@ fixer1234 si está hablando específicamente de mi pregunta y la pregunta marcada como duplicada, entonces no. Mi pregunta está relacionada con Windows 10 y el duplicado está relacionado con Windows 7.
Jueves
@Ramhound Tienes razón, pero una pregunta es específicamente para la solución de Windows 10 y la otra es para Windows 7 a pesar de que ambas soluciones aplican Windows 10.
Jueves
@Ramhound Sí, tienes razón. Usted preguntó cómo mi pregunta y la pregunta duplicada son diferentes. Te dije que, aparte de las versiones de Windows, ambas son iguales. puede continuar y marcar mi pregunta como duplicada si lo desea.
Jue

Respuestas:

22

Esto es un poco viejo, pero tenía los mismos problemas y ninguno de los anteriores funcionaba. Lo que hice fue crear un VBScript que se ejecutó en el inicio que abrió dicho programa.

1) Haga clic derecho en el programa, vaya a propiedades, luego compatibilidad y verifique "Run as Administrator"

2) Crear VBScriptusando un editor de texto (yo uso Notepad ++)

Guión:

  Set WshShell = CreateObject("WScript.Shell" ) 
  WshShell.Run """C:\Program Files (x86)\File\Program.exe""", 0 'Must quote command if it has spaces; must escape quotes
  Set WshShell = Nothing

Nota: esa C:\Program Files (x86)\File\Program.exees la ruta completa al programa con extensión. Además, asegúrese de guardarlo como .vbs

3) Ahora coloque el VBScript en la carpeta de inicio:

%AppData%\Microsoft\Windows\Start Menu\Programs\Startup

O, alternativamente, acceda a él por Win+ Rshell:startupEnter

Usé esto en lugar de un archivo por lotes porque no quería que apareciera esa ventana de comando fea.

Andrés
fuente
Puede usar en %appdata%lugar de su AppData \ Roaming personalizada
Ben Philipp
Esto es exactamente lo que termino haciendo, pero usé Delphi para escribir un mini programa que llamará a mi programa al inicio. Este mini programa se ejecutó al inicio. Esta solución hizo el trabajo.
ThN
Descubrí que para invocar un acceso directo elevado para que se ejecute como elevado, tuve que dejar que el script iniciara cmd.exe con la opción / c para ejecutar el acceso directo.
Alf P. Steinbach
Para que quede claro, esto todavía incita al usuario a decir si desea ejecutar el programa como administrador, ¿verdad? Este truco de inicio no evita eso de alguna manera, ¿verdad?
Kyle Delaney
Debe haber una forma integrada / nativa de hacer esto.
HolyAvengerOne
29

Cree una tarea programada para disparar al iniciar sesión.

En el cuadro de diálogo Crear tarea , seleccione lo siguiente:

  1. General (pestaña) - Ejecutar con los más altos privilegios
  2. Disparadores (pestaña) - Nuevo (botón) - Comenzar la tarea - Al iniciar sesión
Steven
fuente
2
Seguí tu respuesta, pero comienza el programa como un proceso en segundo plano, no como una aplicación. Como resultado, no se carga nada en la pantalla y el proceso aparece en el proceso de fondo en el Administrador de tareas.
Jueves
¿Será necesario ejecutar el programa para cualquier usuario que inicie sesión o solo el usuario que inició sesión principalmente?
Steven
2
esta es en realidad una respuesta MUCHO mejor que la anterior, porque puede programar un demonio para que se inicie cuando la computadora se inicia y ningún usuario está conectado, por ejemplo, necesito comenzar diluido en la computadora, incluso yo o cualquier otra persona iniciará sesión esa computadora (el diluvio es un cliente torrent, que en modo no clásico se convertirá en cliente / servidor, por lo tanto, no necesito que el cliente comience a tener el servidor en funcionamiento), la única otra solución, pero es que otro servicio lo inicie ( como el cron de cygwin) o para que sea un servicio (y hacerlo manualmente si los fabricantes de software no lo
diseñaron
1
@ThN Puede intentar agregar un pequeño retraso, 10-15 segundos, al disparador. Eso solucionó el "correr en segundo plano" para mí. Eso fue para un script AutoHotkey, no sé si se aplica a su problema.
Anders Jørgensen
2
Al principio tampoco funcionaba para mí, pero solo porque había configurado el disparador en "Al inicio", lo cual está mal porque mi programa no es un servicio, es una aplicación con una interfaz de usuario. En cambio, tuve que establecer el disparador en "Al iniciar sesión" y seleccionar MI usuario de Windows. ¡Funcionó de inmediato después de eso!
Nicolas C.
4

Bueno, ¿por qué no simplemente copia el acceso directo del programa a la carpeta Inicio y en sus propiedades, habilita los permisos de administrador en la pestaña Compatibilidad?

Surya Teja Karra
fuente
1
Lo hemos hecho y mi programa aún genera Access Deniedun mensaje de error.
Jueves
¿hizo clic derecho en el acceso directo en la carpeta Inicio y configuró sus permisos correctamente? La opción "Ejecutar como administrador" generalmente está presente en la pestaña Compatibilidad de la ventana de propiedades
Surya Teja Karra
1
Tienes razón. Primero, hemos habilitado la Run with highest privilegecasilla de verificación en la sección de compatibilidad para el acceso directo. Luego, al hacer clic en el icono, aún apareció el mensaje de error. Luego, movimos el acceso directo a la carpeta de inicio, todavía generó el mensaje de error. Incluso probamos el Programador de tareas y sigue siendo el mismo. Incluso probé el archivo por lotes en el programador de tareas como alguien sugirió. Es lo mismo. La única vez que se carga normalmente es cuando hacemos clic derecho en el archivo ejecutable real para mi programa y hacemos clic en la Run as an Administratoropción en el menú emergente. El único usuario es el administrador en sys
ThN
Usted sabe en aquellos días, XP tenía este menú contextual "Ejecutar como" con el que podía ejecutar un programa como otro usuario si hubiera obtenido la autorización para hacerlo. Quizás este programa tuyo necesite lo mismo: /
Surya Teja Karra
1
Esto no funciona
HolyAvengerOne
1

Puede intentar verificar su pestaña de Seguridad en las Propiedades del programa / aplicación y ver si todos los usuarios / grupos tienen "Control total". No estoy seguro de si eso se solucionará, pero vale la pena intentarlo

SillyBillyWTF
fuente
1
Esto no funciona
HolyAvengerOne