Cómo iniciar un proceso sin levantar
Mi aplicación se ejecuta comorequestedExecutionLevel
ajustado ahighestAvailable
.
¿Cómo ejecuto un proceso no habilitado?
Intenté lo siguiente pero no funcionó:
Process.Start(new ProcessStartInfo {FileName = "foo.exe", Verb = "open"})
He intentado los siguientes niveles de confianza para iniciar mi proceso utilizando la API de Win32, pero ninguno de ellos funciona correctamente:
0
1260: This program is blocked by group policy. For more information, contact your system administrator.
0x1000
The application was unable to start correctly (0xc0000142). Click OK to close the application.
0x10000
Process starts then hangs
0x20000
All options are not available
0x40000
Runs as admin
Si corrotskill foo
Desde mi aplicación elevada, reinicia foo con los privilegios correctos.
Lo que necesito es una solución en la que no tenga que especificar el nivel de confianza. El proceso debe comenzar con el nivel de confianza correcto automáticamente al igual que eltskill
la herramienta se reiniciafoo.exe
en el nivel de confianza correcto. El usuario selecciona y ejecutafoo.exe
Y así puede ser cualquier cosa.
Si puedo obtener el nivel de confianza de un proceso de alguna manera, puedo hacerlo fácilmente ya quefoo.exe
se ejecuta cuando mi aplicación puede capturar su nivel de confianza.