windows - La aplicación no funciona cuando se instala con Inno Setup
inno-setup (1)
Estoy desarrollando una aplicación de base de datos de escritorio. Usando rdlc report y reportviewer. Todo estuvo bien en el proceso de desarrollo, reportviewer mostraba todos los datos sin problemas. Implemento la aplicación con Inno Setup. Pero cuando instalo la aplicación, el reportviewer no muestra datos. Mientras los datos se insertan correctamente en las tablas.
Para las aplicaciones que funcionan incorrectamente o fallan por completo, cuando lo instala Inno Setup en la carpeta
Program Files
, lo primero que debe probar es intentar implementar la aplicación manualmente en la misma carpeta.
Si la aplicación falla incluso después de una implementación manual, el problema más habitual es que la aplicación requiere que un usuario tenga permisos de escritura en la carpeta de la aplicación.
Como en las versiones modernas de Windows, un usuario generalmente no tiene permisos de escritura en la carpeta
Program Files
, la aplicación no funciona.
Por lo tanto, el problema generalmente no tiene nada que ver con Inno Setup, pero es un problema de la aplicación en sí.
Para resolver el problema:
-
La mejor solución es rediseñar la aplicación para que no requiera permisos de escritura en su carpeta.
Las aplicaciones de Windows no deberían requerir permisos de escritura en su carpeta.
Eso va en contra de las pautas de Windows.
La aplicación debe escribir datos en una carpeta de perfil de usuario (
C:/Users/username/AppData
) o en una carpeta de datos común (C:/ProgramData
). -
Una solución alternativa es que el instalador otorgue a los usuarios permisos de escritura en la carpeta de instalación.
Haga eso solo si no puede arreglar la aplicación (por ejemplo, es una aplicación de terceros).
Consulte Inno Setup: cómo configurar los permisos de la carpeta de instalación . -
Una solución alternativa aún más grave es configurar la aplicación para que se ejecute con privilegios elevados (Administrador).
Consulte el acceso directo de escritorio Inno Setup (enlace) que tiene establecida la propiedad avanzada "Ejecutar como administrador" o Cómo configurar ''Ejecutar como administrador'' en un archivo mediante Inno Setup .
Existen numerosas otras posibles razones, que incluyen:
-
Omitió alguna dependencia:
- Biblioteca DLL
- .NET Framework
- Java Runtime Environment
- otro tiempo de ejecución
- Objeto COM / ActiveX, etc.
-
La aplicación requiere alguna configuración:
- un archivo
- una clave de registro [incluido el registro de objetos COM / ActiveX]
- una variable de entorno, etc.
-
La aplicación no está diseñada para ejecutarse desde una carpeta que tiene un espacio en su nombre (
Program Files
). -
La virtualización de archivos de Windows confunde la aplicación (aunque es poco probable). Consulte La aplicación instalada con Inno Setup escribe archivos en una ubicación desconocida en lugar de su carpeta de instalación .