Question

J'essaie de faire fonctionner correctement nos scripts de génération (qui utilisent MSBuild) sous Vista. Les projets dont l'option Enregistrer la sortie (dans les options de l'éditeur de liens) est définie sur True ne parviennent pas à générer à partir de la ligne de commande avec un résultat similaire à ceci:

Projet: erreur PRJ0050: échec de l’enregistrement de la sortie. Essayez d'activer la redirection par utilisateur ou enregistrez le composant à partir d'une invite de commande avec des autorisations élevées.

Bien que je puisse facilement résoudre ce problème pour une seule machine, en exécutant en tant qu'administrateur ou ce que je veux, le script de construction doit & "juste travailler &" pour toute machine de dev.

Même échouer lors de l'enregistrement mais poursuivre la construction serait satisfaisant. Des suggestions?

Brad

Était-ce utile?

La solution

Vous pouvez créer un fichier cmd contenant le texte suivant:

@echo off
call regsvr32.exe /s %1
if %errorlevel% EQU 0 goto ok
echo Fail to register %1
goto exit
:ok
echo Register successful %1
:exit

Ensuite, vous devez désactiver l'enregistrement de la sortie et ajouter l'étape de construction personnalisée à l'aide de la commande <pathtocmdscript> $(TargetPath). La sortie 1 doit être définie sur $ (TargetPath) pour l’étape de construction personnalisée.

Enfin, vous recevrez un message sur l’enregistrement des progrès, mais la compilation ne s’arrêtera pas sur cette étape.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top