He creado una aplicación .NET C# WinForms en Win 7 RTM x64, que digamos que he llamado a DataInstaller.Asistente de compatibilidad de programas piensa que mi aplicación es un instalador
Cuando ejecuto este programa fuera del depurador (solo un formulario vacío sin funcionalidad en este momento), funciona bien hasta que cierro el formulario. Entonces consigo un mensaje del Asistente para la compatibilidad del programa que dice:
Este programa podría no haberse instalado correctamente
I a continuación, obtener la opción de volver a instalar con la configuración recomendada o decir que la instalación se hizo el trabajo como se esperaba.
Si nombro la aplicación 'DataThingy' esto no es un problema, supongo que esto está relacionado con la forma en que los programas llamados * Setup obtienen un icono de escudo UAC.
Supongo que habrá algo simple que puedo poner en el manifiesto de la aplicación para evitar esto?
No estoy seguro de si esto ocurre en Vista ya que no tengo acceso actualmente.
Cambiar el nombre no es una opción y desactivar el UAC no es una opción, así que no sugiera esto.
Editar:
OMG.
Parece que si cualquiera de lo siguiente es cierto, UAC se pega su remo en:
nombre Exe contiene la palabra instalador
AssemblyInfo.cs
AssemblyTitle contains the word 'Installer'
e.g. [assembly: AssemblyTitle("DataInstaller")]
AssemblyProduct contains the word 'Installer'
e.g. [assembly: AssemblyProduct("Data Installation Utility")]
'instalador' puede también ser 'Configuración'.
Me da por creer, realmente lo hace. Obviamente, uno de los antiguos programadores de VB6 fue reubicado en el equipo de UAC en Redmond.
Todavía necesito una solución alternativa, no estoy dispuesto a aceptar que mi aplicación no pueda ser llamada un instalador porque no toca el registro ni pone ningún archivo en la carpeta Archivos de programa.
Supongo que UAC pondría la máquina en el bloqueo total si traté de ejecutar mi aplicación llamada IAmAVirus.exe. (En realidad, no lo intento porque no estoy del todo convencido de que estoy siendo tonto)
En realidad, Windows simplemente comprueba el nombre de archivo para palabras como "configuración" o "instalar" para determinar si algo es un instalador o no. Sí, es tonto ... ¿Se puede hacer algo al respecto? Me pregunto ... Bueno Q, sin embargo. –
Espero que sí, porque es demasiado "mágico" para mi gusto ... ¡gracias por la votación! – Carl
@Wim - No, parece ser AssemblyTitle como sugiere la publicación. Verificado en mi máquina Win7 SP1 para PackageInstaller.exe - no hay problema si el título del ensamblado es PackageNstaller –