Pytanie Nieznany wydawca nadal pojawia się na poprawnie podpisanym kodowo dodatku VSTO zbudowanym z VS2010


Mam zainstalowany AddIn VSTO OneClick, który podpisałem z aktualnym certyfikatem podpisywania kodu Verisign (PFX). Potwierdziłem, że poprawnie podpisuję się z pomocą techniczną Verisign przez telefon - zgadzają się. Buduję z VS2010. Mimo to Addin pokazuje "nieznanego wydawcy" podczas próby instalacji.

Czemu?

Jak mogę zamienić "Nieznany wydawca" na nazwisko Wydawcy na certyfikacie PFX?

Oto, co zrobiłem, aby rozwiązać problem do tej pory:

  1. Uznany to pytanie o problemie "Nieznany wydawca" w Addins. The przyjął odpowiedź na to pytanie omawia użycie mage.exe podpisać manifesty rozmieszczenia i aplikacji.

  2. użyłem mage.exe zastosowanie podpisu PFX do manifestów aplikacji i manifestów rozmieszczania bez skutku; "Unknown Publisher" nadal pokazuje się po instalacji Addina. Dopiero wtedy zobaczyłem komentarz kierownika programu MS na stronie ostatniego linku, który VSTO Addin zbudował w 2008 roku lub wcześniej, nie czyta ani manifestów aplikacji, ani rozmieszczenia.

  3. Następnie zobaczyłem ten sam komentarz menedżera programu MS w dolnym łączeniu do tej strony i stwierdzenie, że począwszy od VS2010, że VSTO Addin's z Wydawcą określonym jako podany na połączonej stronie będą teraz miały swoje manifesty przeczytane i poprawna nazwa Wydawcy wyświetlana podczas instalacji Addin.

Zrobiłem to wszystko i wydawca na moim poprawnie podpisanym kodem OneClick Deployment nadal wyświetla "Unknown Publisher" - dlaczego?


12
2018-05-09 10:51


pochodzenie


Skończyło się na tym, że szukałem rozwiązania, aby pokazać wydawcy w oknach dialogowych dodatków Office. Dla takich jak ja: Niestety, to nie jest możliwe, zobacz stackoverflow.com/a/38379585/1200847 - Georg Jung


Odpowiedzi:


  1. Zainstaluj certyfikat na komputerze lokalnym. W Eksploratorze Windows kliknij prawym przyciskiem myszy plik certyfikatu, wybierz Zainstaluj PFXi postępuj zgodnie z instrukcjami.

  2. Upewnij się, że manifest i zespół projektu VSTO są podpisane. We właściwościach projektu VSTO na karcie Podpisywanie należy zaznaczyć opcję "Podpisz manifesty ClickOnce" (jeśli nie, wybierz swój plik PFX). "Podpisz zestaw" również należy sprawdzić i użyć tego samego pliku PFX.

  3. Po opublikowaniu VSTO musisz podpisać plik manifestu i opublikowane pliki .vsto z wiersza poleceń. Będziesz także musiał skopiować pliki .dll z pojemnika do opublikowanego folderu przed uruchomieniem programu mage.exe (aby uniknąć błędów "Nie znaleziono pliku"). Postępuj zgodnie ze składnią poniżej i bardzo polecam podpisanie obu .vsto dla bezpieczeństwa.

.

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%

(Przepraszam, jeśli składnia nie jest na miejscu. Skopiowałem ją z własnego kodu i zmodyfikowałem dla uproszczenia).


6
2018-05-09 14:12



Ostatnio wystąpił ten sam problem z certyfikatem EV firmy Symantec. Oprócz odpowiedzi Keitha, musiałem dodatkowo ręcznie określić wydawcy za pomocą argumentu "-pub <nazwa firmy>". Nie było automatycznie odbierane z certyfikatu podpisującego kod. - Nathan Ernst