2016-03-23 1 views
0

Je dispose d'un projet MSI de base que je peux créer et signer avec succès sur mon système local via l'interface InstallShield 2015 (exécutée en tant qu'administrateur). Le processus ne prend qu'une minute ou 2.Problèmes de signature avec ISCmdBld? Erreur 6259

Toutefois, si proxy I dans notre système de construction à utiliser ISCmdBld pour construire exactement le même projet, il échoue juste après la connexion de la ligne:
Started signing certificate.msi ...

Le spécifique erreur est enregistré:
ISDEV : error -6259: Internal build error

La ligne de commande utilisé pour ISCmdBld I est (pas en tant qu'administrateur):

ISCmdBld.exe -p "W:\MyProject\Setup\Project Setup.ism" -x 

Dans les deux cas, le fichier .ism à construire est exactement le même fichier de projet. Mais lors de l'exécution de cette commande à travers le système de construction, il semble s'accrocher à beaucoup de lignes similaires à Started signing SomeExeMyProjectUses.exe.... Alors qu'InstallShield termine ces lignes dans une seconde ou deux, ISCmdBld s'y bloque pendant plus de 20 secondes avant de continuer (sauf pour certificate.msi où il échoue complètement.) Cela signifie que ISCmdBld prend des minutes à l'erreur, où l'exécution de l'interface réussit dans la moitié temps.

le système de construction n'est pas connecté à Internet, dans le cas qui compte, bien que je puisse construire avec succès d'autres projets qui ne sont pas signés.

+0

Vous pouvez obtenir plus de lignes de journal, parfois autour d'une erreur, en ajoutant '-v' à la ligne de commande iscmdbld.exe. Cela aide-t-il à différencier? Je vais vérifier ce que nous pouvons dire d'un -6259 quand je suis au bureau. –

+0

@MichaelUrman - Pas de chance avec '-v'. Il montre juste le même échec et enregistre la suppression de certaines choses temporaires, mais c'est tout. –

+0

Le coupable le plus probable semble être MsiGetFileSignatureInformation renvoyant un code d'erreur inattendue. S'agit-il d'un appel à iscmdbld ou seulement d'un appel hébergé dans un contexte inhabituel (par exemple, par un service ou une tâche planifiée s'exécutant en tant que système)? –

Répondre

0

Je viens de corriger ce bug sur notre serveur de build, le problème que la chaîne de certification n'était pas fiable. (certificat interne pour le développement)

assurez-vous que le certificat CA et le certificat intermédiaire e sont installés sur la machine.

également le processus de signature nécessite généralement l'accès à une autorité d'horodatage externe.