2013-03-11 4 views
0

J'utilise WIX toolset 3.5 pour créer un package msi pour l'installation du site Web. Mon site web est basé sur asp et j'ai la configuration dans le fichier config.asp. Lors de l'installation, j'ai une fenêtre de dialogue permettant à l'utilisateur d'insérer le nom du serveur, le nom de la base de données, le nom d'utilisateur et le mot de passe. Ensuite, je dois insérer (remplacer) ces valeurs dans le fichier config.asp. J'ai plusieurs lignes comme: ConnectionString = « Provider = SQLOLEDB.1; Mot de passe = xxx; ID utilisateur = utilisateur; Initial Catalog = ....Modifier le fichier asp

Quelle est la meilleure façon de le faire que je dois analyser? déposer une certaine façon. Tout exemple? Tout ce que j'ai trouvé étaient comment remplacer le fichier de configuration dans .NET, qui est basé sur XML et a approche différente.

Merci

Répondre

1

Si les fichiers ne sont pas vraies config.asp XML qui peut être traité en utilisant XPATH, vous devrez écrire des actions personnalisées pour faire les mises à jour FWIW, InstallShield a une fonction de "remplacement de texte" qui est similaire aux capacités Xml mais qui utilise la recherche et remplacez le texte régulier.

+0

Merci. Je connais les actions personnalisées, mais avez-vous un exemple de remplacement de texte de bouclier d'installation? – Simon

+0

Avec InstallShield, vous utilisez un concepteur pour programmer, il n'est donc pas facile de publier un "exemple". Voici la rubrique d'aide: http://helpnet.flexerasoftware.com/installshield16helplib/TextFileChanges-SrchRplc.htm –

+0

J'ai décidé d'utiliser WIX et CustomAction: String filePath = Environment.GetEnvironmentVariable ("TEMP") + Path.DirectorySeparatorChar + "config.asp"; Mais le fichier n'existe pas dans le dossier temporaire. J'ai After = "InstallInitialize" InstallExecuteSequence. Qu'est-ce que je fais mal? Où puis-je accéder au fichier avec une action personnalisée? Dois-je utiliser After = "InstallFiles" et modifier le fichier à partir de l'emplacement d'installation et non de l'emplacement temporaire? – Simon