66 votes

WiX GLACE erreurs de validation

Je vais avoir de drôles de questions avec WiX sur ma machine locale. Le problème est intermittent, mais après quelques de la reconstruction de la solution, le WiX projet commence à jeter de la GLACE des erreurs de validation.

Si je vais dans mon AppData\Local\Temp le dossier et supprimez tous les dossiers temporaires qui contiennent le MSI, la solution compile de nouveau. Un peu plus tard, le problème commence à se produire de nouveau. D'avoir à garder de compensation vers le bas les dossiers temp n'est pas durable ou de solution satisfaisante.

Quelqu'un d'autre a rencontré ce problème? La validation des codes d'erreur semble toujours être une combinaison de ICE30, ICE38, ICE64 et ICE91

Mise à jour:

Comme demandé, voici les entrées de la panne la plus récente:

erreur LGHT0204: ICE38: GLACE Erreur Interne 1002. API Renvoyé: 1615.
erreur LGHT0204: ICE38: Erreur 2235: /UO.AppFramework.Inclut les.msi, _Profile, mise à JOUR de DirectoryENSEMBLE _Profile=0
erreur LGHT0204: ICE64: GLACE Erreur Interne 1001. API Retour: 16 h 15.
erreur LGHT0204: ICE64: Erreur 2242: Unité d'organisation.AppFramework.Inclut les.msi, _Profile, ALTER TABLE DirectoryAJOUTER _Profile COURT RETENUE TEMPORAIRE
erreur LGHT0204: ICE91: GLACE Erreur Interne 1001. API Renvoyé: 1615.
erreur LGHT0204: ICE91: Erreur 2242: OU.AppFramework.Inclut les.msi, _Profile, ALTER TABLE Directory AJOUTER _Profile COURT RETENUE TEMPORAIRE

Fait intéressant, cette défaillance s'est produite avant que je quitte le bureau la nuit dernière, et la solution compilé OK quand je suis arrivé ce matin. Comme il semble se centre sur le répertoire temporaire où le MSI est de construire par WiX, pourrait-il être le processus de construction du verrouillage d'un fichier?

Mise à jour 2:

Et maintenant nous sommes de retour à plus de 600 erreurs, surtout la répétition de cette erreur:

erreur LGHT0204: ICE30: GLACE Erreur Interne 100. API Renvoyé: 1615.
erreur LGHT0204: ICE30: Erreur 2235: AppFramework.Inclut les.msi, _ICE30SFN, SÉLECTIONNEZ Directory_Parent, Directory, DefaultDir, _ICE30SFN, _ICE30LFN DE DirectoryDirectory.Directory=? ET Directory_Parent<>?

Mise à jour 3:

Le problème persiste même après avoir essayé la suggestion de @limpan. Il ya un couple de l'avertissement donné par la lumière et qui sont causés par le MSI dossier de sortie verrouillés lorsque la lumière tente d'accéder à la MSI:

Avertissement 549 Le répertoire '\AppData\Local\Temp\2opu3hxf " est en cours d'utilisation et ne peut pas être supprimé. light.exe

61voto

Essayez d'ajouter de l' <RunWixToolsOutOfProc>true</RunWixToolsOutOfProc> de votre WiX fichier de projet.

Nous avons eu le même problème pendant un certain temps, et j'ai essayé diverses solutions, y compris en supprimant les fichiers temporaires et le réglage de la msbuild variable d'environnement. Ces tout semblait fonctionner pendant un certain temps, mais finalement (parfois après quelques jours) le problème viendrait de nouveau de retour.

J'ai remarqué que sur ma machine devenv.exe a été le processus qui a été le verrouillage de fichiers light.exe a été d'essayer de les supprimer. J'ai aussi tombé sur un autre thread qui a évoqué ce projet pour rendre la WiX les outils d'exécution de processus. J'ai pensé qu'il pourrait être vaut la peine d'essayer et ça semble avoir réglé le problème pour nous (pour l'instant...)

47voto

limpan Points 321

J'ai eu ce problème et l'a résolu dans mon environnement.

Réponse courte:

Ajouter la variable d'environnement MSBUILDDISABLENODEREUSE=1 et redémarrez Visual Studio

Réponse longue:

Il y avait un avertissement lors de la construction que je n'ai pas vu depuis que j'étais trop concentré sur le message d'erreur:

Impossible de supprimer le répertoire temporaire: C:\Users[nom d'utilisateur]\AppData\Local\Temp\5[uniqueFolderName] light.exe

J'ai essayé de supprimer le dossier manuellement, mais il a été utilisé par un autre processus.

Il s'avère que beaucoup de MSBuild.exe les processus sont lancés lors de la construction et de la fermeture. Vous pouvez lire plus sur la raison et ce que vous pouvez faire pour changer ce comportement dans le Débordement de la Pile question msbuild.exe rester ouvert, le verrouillage de fichiers.

Ce fil: c'est la solution dans ce thread:

J'espère que cette réponse peut aider quelqu'un d'autre.

18voto

Manu Expedith Points 101

Pour ICE30: GLACE Erreur Interne 100. API Renvoyé: 1615, s'il vous plaît essayer cela et voir si ça fonctionne:

  1. Fermez toutes les instances de Visual Studio (peut-être un peu la seule qui importe, mais juste au cas où)
  2. Aller à l' C:\Documents and Settings\\****user id****\\Local Settings\Temp\.
  3. Effacer tous les dossiers qui ressemblent à ça .. 's12qgaks'. Fondamentalement, il contient le MSI fichiers
  4. L'ouverture de la solution et de recompiler.

Bonne chance!

9voto

Sunil Agarwal Points 1243

Moi aussi j'avait fait face à de même la question. Dans les propriétés du projet, allez dans les Paramètres de l'Outil et cliquez sur Supprimer de la GLACE de validation.

Enter image description here

1voto

Mathew Gehres Points 26

J'ai eu le même problème. Il s'est avéré être mon logiciel Anti-Virus (OfficeScan), Il avait l'intermédiaire des fichiers créés par les Light.exe verrouillé et le processus de validation a échoué. À l'exclusion du dossier temp de scan de virus ou d'éteindre la GLACE de validation n'est pas une solution acceptable.

Si quelqu'un a une meilleure solution. Je voudrais savoir.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X