2016-03-24 6 views
0

J'ai développé une extension basée sur NetOffice. Ma configuration de bureau nécessite que les applications soient signées par des éditeurs approuvés. J'ai essayé de signer la DLL de sortie avec signtool.exe, avec un certificat valide, mais malheureusement, Office dit "Il n'y a pas de signature numérique disponible".Signing office COM Add-in

L'option peut être activée via:

File->Options->Trust Center->Trust Center Settings -> Add-ins -> Require application Add-ins to be signed by Trusted Publisher 

Quelle est la méthode appropriée pour la signature de la DLL? Lorsque vous utilisez VSTO, ClickOnce gère la signature. Il existe également un fichier .manifest créé pour la DLL. Je ne suis pas sûr que ce soit obligatoire ou non, mais je ne parviens pas à en créer un pour ma bibliothèque de classes.

Quelques infos que j'ai trouvé en ligne:

https://msdn.microsoft.com/en-us/library/bb772096(v=vs.120).aspx

https://msdn.microsoft.com/en-us/library/bb386179.aspx

https://msdn.microsoft.com/en-us/library/che5h906.aspx

Répondre

0

Tout d'abord, créez un fichier .pfx avec pvk2pfx.exe:

  • « C : {CHEMIN} \ pvk2pfx.exe "-pvk {NOM FICHIER PVK} -pi {cer t nom du propriétaire} -spc {NOM DU FICHIER SPC} -pfx {PFX NOM DU FICHIER}
  • Par exemple: "C: \ Program Files \ Microsoft SDK \ Windows \ v7.1 \ Bin \ pvk2pfx.exe" -pvk mypvkfile.pvk -pi companyname -spc myspcfile .spc -pfx mypfxfile .pfx

Ensuite, utilisez l'utilitaire SignTool.exe:

  • signe signtool/f « C: {PATH} \ mypfxfile.pfx "/ p {nom du propriétaire du certificat}" C: {PATH} \ setup.exe "
+0

C'est ainsi que je le signe. Je l'utilise sur tous les fichiers DLL et Exe, puis je signe l'installation. – bondar

+0

Donc, il est apparemment signé correctement, mais Office se plaint toujours qu'il n'est pas signé? –

+0

Oui. Chose est, j'ai un autre addin qui est C++ natif avec COM et ATL - cela fonctionne comme prévu. Mais en utilisant exactement les mêmes étapes pour l'addin Managed, ne fonctionne pas :( J'ai vu Add-in Express sont en quelque sorte en mesure de signer un Addin géré correctement.Malheureusement, je n'ai pas eu la chance de comprendre ce qui est le – bondar