IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Outils Delphi Discussion :

Inno Setup, autoriser l'installation une seule fois


Sujet :

Outils Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2011
    Messages : 27
    Points : 19
    Points
    19
    Par défaut Inno Setup, autoriser l'installation une seule fois
    Bonjour à tous,

    J'ai développé une application, et je me sers d'inno Setup pour déployer celle-ci. Je souhaiterais que l'utilisateur final puisse installer qu'une seule fois l'application. J'ai parcouru le forum, et je n'ai pas trouvé d'orientation dans ce sens.

    En vous remerciant par avance

    Cordialement

  2. #2
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 419
    Points
    1 419
    Par défaut
    Inno setup crée une clef dans le registre, il suffit de la vérifier.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
     
    #define MyAppId         "{CA05C15E-0FDC-48C3-A5CB-92E77Z72F512}"
     
    [Setup]
    AppId={{#MyAppId}
     
    [CustomMessages]
    french.InstalledVersion=Version %s déjà installé.
     
    [code]
    function InitializeSetup(): Boolean;
    var
      InstalledVersion: String;
    begin
      Result := True;
     
      if RegQueryStringValue( HKLM, 'Software\Microsoft\Windows\CurrentVersion\Uninstall\{#MyAppId}_is1', 'DisplayVersion', InstalledVersion) then
      begin                   
        MsgBox(Format(ExpandConstant('{cm:VersionAlreadySet}'), [InstalledVersion]), mbError, MB_OK);
        Result := False;
      end;
    end;

  3. #3
    Membre à l'essai
    Homme Profil pro
    Inscrit en
    Août 2011
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Août 2011
    Messages : 27
    Points : 19
    Points
    19
    Par défaut
    Un grand merci à cette réponse ultra rapide !!!

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur développement en retraite
    Inscrit en
    Juin 2002
    Messages
    410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement en retraite
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2002
    Messages : 410
    Points : 307
    Points
    307
    Par défaut
    Bonjour,

    Interressé moi aussi par la question je viens de tester.
    Attention sous Seven 64 bits la clef que met en place Innosetup est :
    HKLM\SOFTWARE\Wow6432Node\Microsoft\CurrentVersion... la fin est la même mais il y a Wow6432Node en plus, je pense qu'il faut tester les deux clefs

    Bernard

  5. #5
    Membre expérimenté
    Avatar de ouiouioui
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Août 2006
    Messages
    984
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Août 2006
    Messages : 984
    Points : 1 419
    Points
    1 419
    Par défaut
    Je suis sur Windows 7 64bits et sa fonctionne très bien, utilise tu ArchitecturesInstallIn64BitMode
    cela affecte la manière dont Inno Setup utilise le registre entre autre.

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement en retraite
    Inscrit en
    Juin 2002
    Messages
    410
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement en retraite
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Juin 2002
    Messages : 410
    Points : 307
    Points
    307
    Par défaut
    Non, mais je me disais ce matin qu'il fallait que je regarde comment utiliser les détection de type d'OS !!
    As-tu de la doc la dessus car je trouve celle de Inno un peu imbuvable

    Je vais faire un effort !

    Merci

Discussions similaires

  1. Réponses: 5
    Dernier message: 19/09/2012, 21h13
  2. Réponses: 3
    Dernier message: 01/03/2010, 10h17
  3. [AC-2003] Autoriser valeur une seule fois
    Par lucas-18 dans le forum IHM
    Réponses: 14
    Dernier message: 07/09/2009, 17h30
  4. Réponses: 2
    Dernier message: 04/07/2006, 02h32
  5. Réponses: 2
    Dernier message: 30/11/2004, 11h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo