2009-10-19 8 views

Répondre

3

La façon la plus simple de le faire serait de stocker la valeur dans le Registre:

  1. Cliquez-droit sur votre projet de configuration et sélectionnez Affichage -> Interface utilisateur

  2. Ajouter un nouveau boîte de dialogue sous Installez et déplacez-le à la position correcte dans la séquence

  3. Chaque contrôle d'une boîte de dialogue possède une propriété appelée Propriété, par ex. Modifier1Property ou ButtonProperty. Le nom de cette propriété doit être une valeur unique, par défaut ce sera quelque chose comme EDITA1. Nous utiliserons ce nom de propriété plus tard pour faire référence à la valeur du contrôle.

  4. Cliquez-droit sur votre projet de configuration et sélectionnez View -> Registre

  5. Accédez à HKCU\Software\[Manufacturer] ou HKCU\Software\[Manufacturer] selon que vous souhaitez enregistrer ce paramètre pour l'utilisateur actuel ou à la machine large. Vous pouvez également créer une nouvelle entrée sous Ruche utilisateur/machine.Ensuite, l'entrée sera stockée sous HKCU ou sous HKLM selon que l'installation est par utilisateur ou par machine.

  6. Créer une nouvelle valeur sous la touche sélectionnée dans 5. Dans la vue des propriétés de cette valeur, entrez le nom de propriété du contrôle qui a été spécifié à l'étape 3. Ce nom doit être entre crochets, par exemple [EDITA1] et vous avez terminé.

+0

Excellent tutoriel! –

+0

si vous pouviez aussi m'aider ici: http://stackoverflow.com/questions/2066048/how-to-make-a-system-configuration-install-installer-to-get-a-variable-from-the-s –

1

Je n'ai pas essayé cela, mais je peux penser que vous pouvez écrire dans le registre de Windows au moment de l'installation et le lire au moment de l'exécution.

+1

C'est la manière générale de le faire, écrire/lire-à partir de l'un ou l'autre registre/base de données/fichier de configuration. Le registre est un bon emplacement commun pour l'application et la mise à niveau/désinstallation pour y accéder. Techniquement, je pense que le registre dans certaines instances pourrait être verrouillé afin qu'une application ne puisse pas lire, mais je n'ai jamais vraiment couru à travers une configuration comme celle-là. –

2

Vous pouvez transmettre l'emplacement fourni à une action d'installation personnalisée et faire ce que vous voulez avec la valeur que l'utilisateur a fournie à votre programme d'installation personnalisé. Enregistrer dans le fichier texte, le fichier de configuration, le registre, etc.

Il vous suffit de transmettre la valeur que l'utilisateur a sélectionnée via CustomActionData à votre action d'installation personnalisée et de la lire pendant OnInstall.

http://msdn.microsoft.com/en-us/library/2w2fhwzz(VS.80).aspx fournit des détails sur la façon de transmettre des données dans votre action d'installation personnalisée.

Ensuite, lorsque vous lancez votre application, vous pouvez simplement lire à partir de l'emplacement connu, quel qu'il soit.

+0

D'après ce que j'ai compris, CustomActionData permet au programme d'installation de recevoir des données à partir de la ligne de commande. –

+0

En étudiant un peu plus, j'ai trouvé qu'un projet d'installation peut transmettre des données à une sortie primaire, s'il s'agit d'une classe d'installation, en utilisant CustomActionData. Comme tu voulais dire. –

+0

Désolé je n'étais pas plus clair sur cela plus tôt, j'ai cherché un bon exemple d'une classe d'installateur personnalisé à associer à votre action personnalisée, mais ne pouvait pas trouver un bon assez rapidement. Peu importe, ils sont assez faciles à configurer. –

0

Il y a deux façons ...

  • le programme d'installation peut écrire un fichier de configuration dans un certain endroit qui peut être lu par l'application (versions typique pour fenêtres anciennes et variantes de Linux)
  • Pour les programmes Windows, le registre est le moyen préféré d'écrire et de lire ces informations (jusqu'à ce que MS trouve une nouvelle façon de faire ces choses). Chaque application obtient un chemin "typique" dans le registre, et peut lire écrire dessus. Cela ne s'applique pas seulement aux informations définies par l'utilisateur lors de l'installation, mais aussi à beaucoup de choses de configuration.

Vous ne savez pas exactement ce que votre question vise, cependant .. Il semble que vous ayez un scénario spécifique en tête.

Questions connexes