
Tengo un viejo juego que a mi esposa y a mí nos gusta jugar; Lo instalé en una máquina nueva con Windows 10 y funciona bien desde la línea de comandos y al hacer doble clic en el ejecutable en el Explorador de archivos.
Sin embargo, siempre muestra el mensaje UAC "¿Quieres que este programa realice cambios?" cuando se ejecuta de esa manera, y estoy intentando ejecutar el juego sin eso.
Varias instrucciones me dirigen al programador de tareas: cree una tarea, otorgue los "privilegios más altos", permita que se ejecute bajo demanda y luego cree un acceso directo para ejecutar esa tarea.
Entonces creo la tarea en el Programador de tareas y las instrucciones sugieren razonablemente probarla para ejecutarla desde allí, y ahí es donde estoy atascado ahora. Parece que no puedo ejecutar el juego haciendo que el Programador de tareas ejecute la tarea que creé.
En "General" (en las propiedades del programador de tareas para esta tarea), tengo "ejecutar solo cuando el usuario ha iniciado sesión", "ejecutar con los privilegios más altos" y "configurar para Windows 10". Los disparadores están vacíos. Acciones tiene "Iniciar un programa" y la ruta completa, incluido el nombre del ejecutable y ".exe". En determinadas condiciones, desmarqué "iniciar la tarea sólo si la computadora tiene alimentación de CA" y no marqué ninguna de las otras casillas.
Si hago clic derecho en la tarea y elijo "Ejecutar", cambia el estado de la tarea a "En ejecución", pero no sucede nada más. Si voy a un símbolo del sistema privilegiado e intento usar "schtasks /run /tn taskName", aparece un mensaje que dice que inició la tarea exitosamente y no sucede nada más.
Supongo que debería mencionar que este juego es un juego de "pantalla completa"; Todas las ventanas normales de Windows desaparecen y esto es lo único que aparece en la pantalla. Por supuesto, no sé si eso hace alguna diferencia.
Otra rareza: pensé que quizás cambiar la opción predeterminada de "Iniciar la tarea sólo si la computadora tiene alimentación de CA" podría ser un problema, así que volví a las propiedades de la tarea e intenté cambiar eso. Cuando hago eso, aparece algo como "la tarea xml contiene un valor que tiene un formato incorrecto o está fuera de rango". En ese caso, esperaría recibir un error al intentar ejecutar la tarea, pero pensé en mencionarlo por si sirve de algo.
El juego es "César III", por si a alguien le importa. ¿Cómo puedo hacer para que esto se ejecute sin el aviso de UAC, ya sea a través del programador de tareas o de otra manera?
Respuesta1
El programador de tareas es el lugar equivocado para buscar. Es una solución alternativa, pero estás luchando contraUAC (Control de cuentas de usuario). La configuración predeterminada para esto requiere que cualquier aplicación que solicite acceso administrativo tenga el visto bueno del usuario y, por lo tanto, el mensaje.
Antes de hacer lo siguiente, verifique las propiedades de su acceso directo y asegúrese de que la aplicación no esté configurada para ejecutarse como Administrador. Si es así, desmarque esa casilla y el problema debería desaparecer. Si no, proceda.
UAC no es algo malo (tanto como lo fue antes). Es una importación del concepto de permisos de Linux para protegerlo de aplicaciones que son malware e intentan secuestrar su máquina a través de privilegios administrativos. Controla agresivamente las carpetas Archivos de programa y Archivos de programa (x86), donde probablemente tengas instalado el juego, para evitar que el usuario instale algo que parece inocente pero no lo es (es decir, una aplicación de monitoreo de crédito que en realidad solo está ahí para instalar un keylogger, 20 barras de herramientas y robar su identidad). Por este motivo aconsejotolerar la ventana emergente a menos que realmente sepa lo que está haciendo y cómo proteger su computadora.
Si sabe cómo proteger la computadora como un profesional, o simplemente decide no seguir mi consejo, aquí le mostramos cómo modificar la configuración de UAC:
- Abrir panel de control
- Seleccionar cuentas de usuario y seguridad familiar
- Seleccionar cuentas de usuario
- Cambiar los parámetros de control de tu cuenta de usuario
- Ajuste el control deslizante a una configuración más baja, o completamente hacia abajo para desactivar UAC.
Tenga en cuenta que la UAC no marca la mayoría de las aplicaciones modernas. Los juegos más antiguos (incluido el suyo) a menudo solicitaban permisos administrativos o intentaban escribir en carpetas protegidas, y simplemente se les permitía hacerlo. En su caso, el acceso directo se dirige a una carpeta protegida y a UAC no le gusta cómo lo hace, lo que probablemente sea la causa principal.
Respuesta2
Me parece una advertencia útil de que algo está haciendo algo fuera de los límites normales de una aplicación. Pero no necesito la advertencia sobre este (y probablemente varios otros) programas específicos.
Así es como funciona la UAC:
Dado que los programas de Windows Vista no reciben privilegios administrativos de forma predeterminada. Incluso si su cuenta es de administrador, los programas no pueden realizar acciones administrativas a menos que se inicien con permisos elevados. Si un programa intenta realizar una acción restringida sin permisos elevados, fallará.
La UAC no es sólo una advertencia que puedes ignorar. Te informa que si dejas ejecutar este programa, podrás hacer lo que desees, incluyendo:
- Ejecutar otros programas con privilegios elevados
- Cambiar archivos de otros programas
- Modificar la configuración de seguridad
- Ventanas dañinas
Puede optar por confiar en que el programa no hará nada destructivo y ejecutarlo, o impedir que se ejecute.
Si el programa se ejecuta sin permisos elevados, la ventana emergente UAC no aparecerá, pero también fallará tan pronto como intente hacer algo prohibido para los usuarios habituales. Lo más probable es que esto provoque un accidente.
No hay término medio: tienes que elevar los privilegios explícitamente cada vez o ejecutar el programa sin privilegios elevados. Es un modelo de seguridad sensato: no se realizan tareas administrativas a diario. En un flujo de trabajo normal no deberías ver demasiado a UAC en acción. A menos que estés usando programas que no se preocupan por la seguridad.
Dado que el programa fue escrito antes de UAC, dudo que esté "solicitando permisos".
Es un poco más complicado que eso.
Básicamente, cualquier proceso puede solicitar iniciar otro proceso con privilegios elevados. Las causas más comunes para que un programa se inicie con privilegios elevados son:
manifiesto de la UAC. Los desarrolladores pueden incrustar un manifiesto dentro de sus ejecutables que obligue a ejecutarlos con privilegios elevados. Al iniciar un ejecutable, Windows buscará este manifiesto y, si está presente, el programa siempre se ejecutará como administrador.
atributo UACen las Propiedades del ejecutable (o del acceso directo), en laCompatibilidadpestaña. Si está presente, Windows elevará el programa.
Configuración de compatibilidad en propiedades. Nuevamente, algunas configuraciones en elCompatibilidadpestaña enPropiedadespuede forzar privilegios elevados. Por ejemplo, habilitar la compatibilidad con sistemas anteriores a Vista hace esto.
Configuraciones de compatibilidad adicionales.Kit de herramientas de compatibilidades un complemento que permite un control detallado sobre algunas funciones de compatibilidad. Una vez más, algunos de estos pueden imponer la elevación de privilegios.
¿Políticas de compatibilidad predeterminadas, tal vez? No estoy seguro de esto, pero sospecho que Windows tiene algunas heurísticas que deciden qué aplicaciones deben ejecutarse con privilegios elevados incluso si no están habilitados explícitamente. Vista tenía algunas características que se crearon para facilitar la transición a UAC, por ejemplo, VirtualStore. Puede que haya más.
Lo más probable es que el juego solicite privilegios administrativos porque utiliza funciones administrativas. En aquel entonces a nadie le importaban estas cosas. Los programas colocaban sus archivos en todas partes:Archivos de programa,ventanasdirectorio, lo que sea. Estos son lugares protegidos.
También hay algunas funciones de compatibilidad que solo necesitan que UAC funcione correctamente. Hasta donde recuerdo, algunas configuraciones de gráficos heredadas solo se pueden usar como administrador.
Larga historia corta:
Si el juego solicita privilegios elevados, entonces puedes asumir con seguridad que TIENE que hacerlo.
No es sólo una advertencia. Es una parte crucial del modelo de seguridad.
Por cierto, si compraste el juego en GOG.com, lo más probable es que no hayas obtenido el ejecutable original lanzado en 1999. GOG.com está parcheando sus juegos para que se ejecuten en hardware y sistemas operativos modernos. Es posible que agreguen su manifiesto UAC al EXE si han descubierto que es necesario.
Respuesta3
Intente hacer clic derecho en el archivo .exe de la aplicación y ejecútelo como administrador.
También puede hacer clic derecho en el acceso directo de la aplicación o en el archivo .exe de la aplicación -> Propiedades -> pestaña Compatibilidad -> cuadro "Ejecutar este programa como administrador" -> Aceptar.