1

En ce moment, je crée un msi et un setup.exe en utilisant Visual Studio. Cela fonctionne assez bien ... jusqu'à récemment.
J'ai récemment ajouté une nouvelle boîte de dialogue avec un Combo Box Control au msi. Maintenant, quand j'installe l'application directement en utilisant le msi, tout fonctionne très bien.
Mais lorsque j'exécute le Setup.exe, le ComboBox ne s'affiche pas correctement. Il affiche uniquement un élément à la fois dans la liste déroulante. Tous les éléments sont toujours là, et je peux même les sélectionner en utilisant les touches Haut/Bas ou les lettres ('S' pour SQL Server, par exemple).VisualStudio MSI Bootstrap Loader Bug et remplacement

Quelqu'un at-il déjà vu ce genre de problème? De plus, lorsque j'utilise InstallShield pour créer l'installation, l'exe créé par InstallShield fonctionne à nouveau correctement.

Donc je suppose que j'ai besoin de réparer celui avec Visual Studio. Des idées comment faire réparer le bootstrapper de studio visuel?

Plate-forme:

l'aide de Visual Studio 2005 pour les builds.

Système d'exploitation: Windows XP SP3.

La machine de build a installé Windows Installer 4.5, mais ce n'est pas un pré-requis. Le msi fonctionne très bien avec Windows Installer 3.

De plus, le problème n'est pas que le programme d'installation se termine trop vite, ou qu'il ne s'installe pas correctement ... C'est le cas. Le seul problème est que la zone de liste déroulante ne s'affiche pas correctement et que cela peut dérouter certains utilisateurs.

+0

Pourriez-vous ajouter des informations sur les versions de produits que vous utilisez (Windows Installer, VS, plate-forme Windows)? –

Répondre

1

Avec quelle version de Visual Studio travaillez-vous? Utilisez-vous VS2008 SP1?

Il existe un problème connu avec le programme d'amorçage de cette version de Visual Studio qui est introduit dans SP1. Peut-être que vous faites face au même problème? Vous pouvez consulter les détails à ce sujet sur le site de connexion de Microsoft:

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=369138

Il y a aussi une discussion en cours ici: http://social.msdn.microsoft.com/Forums/en-US/winformssetup/thread/3731985c-d9cc-4403-ab7d-992a0971f686/

EDIT: En fait, la chose qui a été corrigé dans SP1 pourrait aussi résoudre votre problème. La différence dans SP1 est la façon dont le programme d'amorçage lance le programme d'installation MSI réel. Avant SP1, l'installation MSI (c'est-à-dire msiexec) a été démarrée en tant que processus enfant du programme d'amorçage (c'est-à-dire setup.exe). Maintenant, il est démarré comme un processus non-enfant et setup.exe revient dès que le processus d'amorçage est terminé et que le MSI est lancé. Vous pouvez également voir la différence car les boutons de l'assistant d'installation n'utilisaient pas le style de thème Windows XP/Vista.

0

Dans le .MSI lui-même, quel est le réglage de hauteur du contrôle combo box? La propriété height contrôle la hauteur combinée de la zone de sélection et de la zone de dépôt. Si elle est définie trop bas, vous obtiendrez le problème que vous décrivez (bien que cela n'explique pas pourquoi parfois cela semble correct).

+0

J'ai vérifié que la première chose. La hauteur est définie à une taille appropriée. Aussi le msi lui-même _always_ l'affiche correctement, de même que le .exe généré par InstallShield. Seul le VS exe est borked. – Mostlyharmless

1

Je n'ai pas pu trouver exactement pourquoi le programme d'amorçage VS se comportait comme il était, mais en saisissant un autre Setup.exe d'un autre projet (non construit avec VS) a résolu le problème.

[J'avais l'impression que Setup.exe avait une sorte d'information d'identification ou un lien vers le MSI qu'il est supposé lancer. Apparemment non. Juste jeter dans l'autre configuration.exe a fait l'affaire.]

J'espère que cela aidera quelqu'un.