Question

Dans le cadre de notre système de construction, nous utilisons signtool.exe avec un certificat pour signer nos binaires une fois qu'ils ont été construits.Parfois (il est difficile de dire quand cela va frapper), la signature échoue:

 error MSB3073: The command "C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\bin\signtool.exe" [...] exited with code 1.

Selon le MSDN, un code de sortie de 1 signifie qu'une erreur s'est produite lors de la signature du fichier.Je peux vérifier que le fichier n'a pas été signé.

J'ai également remarqué que parfois, la partie horodatage expire avec un message d'erreur différent, bien que le fichier soit toujours signé (sans horodatage).

Comment puis-je dépanner et corriger ces échecs de signature apparemment aléatoires et incohérents?

Était-ce utile?

La solution

Je soupçonne fortement qu'une connexion défaillante au serveur d'horodatage est responsable d'échecs occasionnels.Peut-être que vous vérifiez votre journal des événements système pour les connexions perdues au moment en question.

Autres conseils

J'ai eu le même problème.Cela se produit parce que le processus antimalware MS MsMpEng.exe vérifie le binaire et ne laisse personne y accéder. Pour résoudre le problème, j'ai construit un binaire sur un disque RAM et cela a fonctionné.

Je viens de parler de ce problème, sur Windows 8.1, donc ce n'est pas le problème des certificats racine de Windows XP que certains citent.

J'ai constaté que le problème était dû au fait que le .exe en cours de signature était également en cours d'exécution.

Si vous exécutez signtool à partir de l'invite cmd et essayez de le signer, vous recevrez un message texte utile vous indiquant ce qui ne va pas (tellement mieux que le code de retour 1 de CreateProcess ().

A arrêté le processus en cours et a pu signer OK.

Dans mon cas, le fichier .pfx de la solution était ancien.Jusqu'à ce que quelqu'un me dise de remplacer le fichier de certificat par un nouveau fichier valide, j'ai continué à recevoir l'erreur "Échec avec le code de sortie 1".

Ce qui signifie, assurez-vous que le fichier de certificat est valide et n'a pas expiré.

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