8
votes

Customaction Code d'erreur réelle renvoyé 1603 à InstallShield

J'utilise à l'aide de MSI de base pour installer mon application.

Je reçois Erreur 1001 Pendant l'installation et l'action du back-Back a lieu. J'ai remarqué dans le journal d'installation que j'ai cette erreur:

"Customaction a renvoyé le code d'erreur réelle 1603. Action terminée Installurize. Valeur de retour 3.

DLL d'action personnalisée est une classe d'installation .NET et la propriété est définie sur True.

Quelqu'un a-t-il une idée de ce qui pourrait être le problème?


0 commentaires

4 Réponses :


2
votes

Votre projet d'installation comprend un composant avec .NET Installer Class défini sur oui . L'utilisation de cette option est un anti-motif, car cela peut entraîner une interface utilisateur modale, même dans des installations silencieuses, et vous indique souvent que "Erreur 1001". Vous pouvez rechercher le composant avec ce paramètre ou prendre un journal verbeux et rechercher des informations peu de temps avant la première ou la seule Valeur de retour 3 . .


1 commentaires

Merci pour votre réponse.Oui, mon projet comprend un composant avec la classe d'installateur .NET définie sur Oui



2
votes

Code d'erreur 1603 est un code d'erreur générique de Windows Installer lorsque l'action personnalisée jette une erreur / exception. Windows Installer n'affiche pas l'erreur / exception réelle dans les journaux d'installation. Pour vérifier l'erreur / exception réelle, nous devons déboguer l'action personnalisée.

Vérifiez si l'action personnalisée lance une erreur / exception.


4 commentaires

Je ne crois pas que cela soit correct. Les exceptions sont consignées dans les journaux d'installation normalement connectés. Messages d'erreur, traces de pile, etc.


@Dougc S'il vous plaît consulter cette sortie MSDN .microsoft.com / fr-US / US / Bibliothèque / Windows / Bureau / ...


Oui, mais c'est des codes d'erreur de MSIEXEC. Si vous lancez une exception dans une autorité de certification gérée, vous verrez l'exception dans le journal si vous spécifiez les bonnes options (c'est-à-dire "/ log Install.log").


Vous êtes correct, ce sont des journaux Windows Installer. Windows Installateurs La pratique standard consiste à écrire ces codes d'erreur dans les journaux d'installation au lieu d'erreurs réelles / des messages d'exception projetés / retournés de l'action personnalisée. Même il mentionne que ce n'est pas un message d'erreur réel donné par ca. Sauf si CA n'écrit pas également dans les journaux d'installation, les messages d'erreur / exception n'apparaissent pas.



2
votes

une solution vérifiée:

Erreur 1001 est dû à une inadéquation .NET Framework. InstallShield utilise regasm.exe et installutillib.dll pour compiler l'installateur, ce qui doit correspondre à la structure cible de votre application et que l'ordinateur cible doit également l'avoir:

Erreur 1001 Raison et solution discutées ici

Entrez la description de l'image ici

Ouvrir InstallShield Ide -> Aller à Outils Menu -> Options et vérifiez les paramètres suivants comme indiqué dans la capture d'écran ci-dessus:


0 commentaires

1
votes

Dans mon cas, j'installisais un service Windows X86 sur une machine X64. Je devais modifier les deux chemins de mes options dans mon dossier d'installation X86 local .NET pour le cadre cible de mon exécutable. c'est-à-dire

emplacement 32 bits C: \ windows \ microsoft.net \ framework \ v4.0.30319

Emplacement 64 bits C: \ windows \ microsoft.net \ framework \ v4.0.30319


2 commentaires

Les deux emplacements que vous avez donnés sont identiques.


C'était mon point - je les ai changés d'être différent pour être identique à résoudre le problème.