windows-vista - orwell - dev c++ pagina oficial
Sobrescribir el ejecutable en C: / Program / MyProg en Windows Vista (1)
La opción simple es incluir un manifiesto que especifique que la aplicación necesita derechos de administrador. Entonces Vista automáticamente solicitará la elevación de los derechos. El manifiesto debería verse más o menos así:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<assemblyIdentity version="1.0.0.0" processorArchitecture="X86" name="ApplicationName" type="win32"/>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator"/>
</requestedPrivileges>
</security>
</trustInfo>
</assembly>
Puede usar la herramienta mt.exe para agregarla a una aplicación existente.
Alternativamente, puede reiniciar el programa con derechos administrativos justo antes de la actualización real. De esta forma, el usuario no necesitará ejecutar derechos administrativos siempre, solo cuando actualice.
Me gustaría que mi programa se actualice solo (descargando un nuevo exe y / o algunos otros archivos de ftp) y utilicé la receta en la respuesta aceptada a esta pregunta . Resumen:
- Cambiar el nombre del programa en ejecución a old-mp.exe
- Descargue la actualización como mp.exe directamente
- Reiniciar el programa
Esto funciona muy bien para Windows XP. En Vista hay un problema, ya que el usuario debe ejecutar el programa como administrador para que esto funcione. Haciendo clic derecho y seleccionando "Ejecutar como administrador" podría estar sobre las cabezas de mis usuarios ... ¿Alguien sabe cómo evitar esto? Me gusta mucho el simple método de actualización.