Вопрос по – Неизвестный издатель по-прежнему отображается в корректно подписанной надстройке VSTO, созданной с использованием VS2010

13

У меня есть OneClick Deployed VSTO Addin, который я подписал с помощью актуального сертификата подписи кода Verisign (PFX). Я подтвердил, что правильно подписываюсь с поддержкой Verisign по телефону & # x2013; они согласны. Я строю с VS2010. Тем не менее, Addin показывает & # x201C; неизвестного издателя & # x201D; когда я пытаюсь установить.

Зачем?

Как заменить & # x201C; Неизвестный издатель & # x201D; с именем издателя на сертификате PFX?

Вот что я сделал, чтобы попытаться решить проблему на сегодняшний день:

Found this question about “Unknown Publisher” issue on Addins. The accepted answer to that question discusses using mage.exe to sign the deployment and application manifests.

I used mage.exe to apply the PFX signature to both the application and deployment manifests to no avail; “Unknown Publisher” still shows when I install the Addin. Only then did I see a comment by a MS program manager on the page of the last link that VSTO Addin's built under 2008 or earlier do not read either the application or deployment manifests.

Then I saw the same MS program manager's comment at bottom linking to this page and asserting that starting in VS2010 that VSTO Addin's with Publisher specified as given in the linked page will now have their manifests read and the correct Publisher name displayed upon Addin installation.

Я сделал все это, и издатель на моем правильно подписанном развертывании OneClick все еще показывает & # x201C; Неизвестный издатель & # x201D; - Зачем?

Я закончил здесь поиском решения для отображения издателя в диалоговых окнах надстроек Office. Для таких, как я: К сожалению, это невозможно, см.stackoverflow.com/a/38379585/1200847 Georg Jung

Ваш Ответ

1   ответ
7

Install the certificate on your local machine. In Windows Explorer right-click the certificate file, select Install PFX, and follow the instructions.

Ensure the VSTO project manifest and assembly are signed. In the VSTO project's properties on the Signing tab, "Sign the ClickOnce manifests" should be checked (if not, select your PFX file). "Sign the assembly" should also be checked and using the same PFX file.

After publishing the VSTO, you'll need to sign the manifest and the published .vsto files from the command line. You will also need to copy the .dll's from the bin to your published folder before you run mage.exe (to avoid "File Not Found" errors). Follow the syntax below, and I highly recommend signing both .vsto's for safety's sake.

.

set AppPublishPath=bin\Release\app.publish
set AppPublishVersionPath=bin\Release\app.publish\Application Files\MyProjectName_1_0_0_0

set CertificatePath=C:\SignedCertificate.pfx
set CertificatePassword=password

copy bin\*.dll "%AppPublishVersionPath%"

mage -update "%AppPublishVersionPath%\MyProjectName.dll.manifest"  -certfile "%CertificatePath%"  -Password %CertificatePassword%
mage -update "%AppPublishVersionPath%\MyProjectName.vsto"  -appmanifest "%AppPublishVersionPath%\MyProjectName.dll.manifest" -certfile "%CertificatePath%"  -Password %CertificatePassword%
mage -update "%AppPublishPath%\MyProjectName.vsto"  -appmanifest "%AppPublishVersionPath%\MyProjectName.dll.manifest"  -certfile "%CertificatePath%"  -Password %CertificatePassword%

См. Комментарий Натана ниже о возможном дополнительном шаге.

Недавно я столкнулся с той же проблемой с сертификатом Symantec EV. В дополнение к ответу Кейта мне также пришлось вручную указать издателя, используя "-pub" название компании & gt; & quot; аргумент. Он не был автоматически выбран из сертификата для подписи кода.

Похожие вопросы