L’applicazione non funziona se installato con Inno Setup

Sto sviluppando un’applicazione per database desktop. Utilizzo di report rdlc e reportviewer. Tutto andava bene nel processo di sviluppo, reportviewer mostrava tutti i dati senza intoppi. Distribuisco app con Inno Setup. Ma quando installo l’app, il reportviewer non mostra i dati. Mentre i dati sono inseriti correttamente nelle tabelle.

Per le applicazioni che funzionano in modo errato o falliscono completamente, quando viene installato dalla cartella Inno Setup to Program Files , la prima cosa da testare è provare a distribuire l’applicazione manualmente nella stessa cartella.

Se l’applicazione fallisce anche dopo una distribuzione manuale, il problema più comune è che l’applicazione richiede a un utente di disporre delle autorizzazioni di scrittura nella cartella dell’applicazione. Come nelle versioni moderne di Windows, in genere un utente non dispone delle autorizzazioni di scrittura per la cartella Program Files , l’applicazione non funziona. Quindi il problema di solito non ha nulla a che fare con Inno Setup, ma è un problema dell’applicazione stessa.

Per risolvere il problema:

  • La soluzione migliore consiste nel reimplementare l’applicazione richiedendo autorizzazioni di scrittura nella relativa cartella. Le applicazioni Windows non devono richiedere permessi di scrittura alla loro cartella. Questo è contro le linee guida di Windows. L’applicazione deve scrivere i dati in una cartella del profilo utente ( C:\Users\username\AppData ) o in una cartella dati comune ( C:\ProgramData ).
  • Una soluzione sporca è che il programma di installazione conceda all’utente le autorizzazioni di scrittura per la cartella di installazione. Fallo solo, se non riesci a far riparare l’applicazione (ad es. È un’applicazione di terze parti).
    Vedi Inno Setup – Come impostare i permessi della cartella di installazione .
  • Una soluzione ancora più grossolana è configurare l’applicazione da eseguire con privilegi elevati (Amministratore).
    Consulta la scorciatoia del desktop Inno Setup (collegamento) che ha il set di proprietà avanzate “Esegui come amministratore” o Come impostare “Esegui come amministratore” su un file usando Inno Setup .

Un’altra possibilità è che l’applicazione non è progettata per essere eseguita da una cartella che ha uno spazio nel suo nome ( Program Files ).


Ancora un’altra cosa è che l’applicazione può essere confusa dalla virtualizzazione dei file di Windows (anche se è improbabile). Vedi Applicazione installata con Inno Setup scrive i file in una posizione sconosciuta invece della sua cartella di installazione .