Vous n'avez pas indiqué comment vous réalisez la localisation dans votre application. Puisque vous développez dans .NET, je suppose que vous avez un fichier .resx pour chaque langue contenant toutes les données localisées. Alors pourquoi ne pas installer les deux fichiers d'aide et rendre le chemin vers le fichier d'aide une chaîne localisée dans le fichier de ressources? Par ailleurs, en utilisant des fichiers de ressources localisés, vous n'aurez qu'un exécutable à installer. Vous pouvez choisir pendant le chargement de vos formulaires quelle langue utilisera en spécifiant le CultureInfo.CurrentUICulture
en conséquence, par ex. basé sur un paramètre de configuration ou une clé de registre.
Concernant la deuxième partie de votre question: Vous pouvez demander à votre utilisateur de sélectionner la langue cible. Cela définirait le paramètre de configuration ou la clé de registre décrite ci-dessus. Cependant, changer la langue pendant l'installation ne changerait pas la langue de l'interface utilisateur du programme d'installation MSI (je ne pense pas que cela soit pris en charge *).
Je vous recommanderais donc d'avoir un installateur séparé pour chaque langue ou d'utiliser un système d'installation différent (NSIS semble être un bon choix). *) MSI peut select the UI language automatically en fonction des paramètres régionaux définis pour l'utilisateur
*) Cependant, ce comportement n'est pas officiellement supporté et la façon de le réaliser est également un peu compliquée.
Pouvez-vous expliquer quel programme d'installation vous utilisez pour générer le msi? Est-ce un projet d'installation Visual Studio ou autre chose? –
J'utilise Visual Studio 2005 – BDeveloper