2017-06-02 1 views
1

Je développe une application de base de données de bureau. Utilisation du rapport rdlc et de reportviewer. Tout allait bien dans le processus de développement, reportviewer affichait toutes les données en douceur. Je déploie l'application avec Inno Setup. Mais lorsque j'installe l'application, le Reportviewer n'affiche pas de données. Alors que les données sont correctement insérées dans les tableaux.L'application ne fonctionne pas lorsqu'elle est installée avec Inno Setup

+0

Il peut s'agir d'un problème de configuration .. vérifiez vos URL API correctement et éventuellement essayez une exécution à sec sur le serveur pour un programme simple, puis faites de même pour votre application – Nevermore

+0

Si vous copiez l'application manuellement dans le sous-dossier Program Files, travail? –

+0

Non, le ReportViewer n'affiche pas de données même si je le copie manuellement dans le sous-dossier Program Files. @MartinPrikryl – Adnan

Répondre

2

Pour les applications qui ne fonctionnent pas correctement ou qui échouent complètement, lorsqu'Insto Setup installe le dossier Program Files, la première chose à tester est d'essayer de déployer l'application manuellement dans le même dossier.

Si l'application échoue même après un déploiement manuel, le problème le plus courant est que l'application nécessite un utilisateur pour avoir des autorisations d'écriture sur le dossier de l'application. Comme sur les versions modernes Windows, un utilisateur n'a généralement pas d'autorisations d'écriture sur le dossier Program Files, l'application ne fonctionne pas. Donc, le problème n'a généralement rien à voir avec Inno Setup, mais c'est un problème de l'application elle-même.

Pour résoudre le problème:

  • La meilleure solution est de ré-implémenter l'application d'exiger des droits d'écriture dans son dossier. Les applications Windows ne doivent pas nécessiter d'autorisations d'écriture sur leur dossier. C'est contre les directives de Windows. L'application doit écrire des données dans un dossier de profil utilisateur (C:\Users\username\AppData) ou dans un dossier de données commun (C:\ProgramData).
  • Une solution de contournement sale consiste à demander au programme d'installation d'accorder à un ou plusieurs utilisateurs des droits d'écriture sur le dossier d'installation. Faites-le seulement, si vous ne parvenez pas à résoudre l'application (par exemple, une application tierce).
    Voir Inno Setup - How to set permissions of installation folder.
  • Encore plus de solution brute consiste à configurer l'application à exécuter avec des privilèges élevés (administrateur). Voir Inno Setup desktop shortcut (link) which has "Run as administrator" advanced property set ou How to set 'Run as administrator' on a file using Inno Setup.

Une autre possibilité est que l'application n'a pas été conçu pour être exécuté à partir d'un dossier qui a un espace dans son nom (Program Files). Une autre chose est que l'application peut être confondue par la virtualisation de Windows File (bien que ce soit peu probable). Voir Application installed with Inno Setup writes files to unknown location instead of its installation folder.