Ponowne podpisywanie manifestów wdrożenia i aplikacji

Po wprowadzeniu zmian we właściwościach wdrożenia w manifeście aplikacji dla aplikacji Windows Forms, aplikacji Windows Presentation Foundation (xbap) lub rozwiązań pakietu Office należy ponownie podpisać manifesty aplikacji i wdrożenia przy użyciu certyfikatu. Ten proces pomaga zagwarantować, że nie zainstalowano naruszonych plików na komputerach użytkowników końcowych.

Innym scenariuszem, w którym można ponownie podpisać manifesty, jest to, że klienci chcą podpisać manifesty aplikacji i wdrożenia przy użyciu własnego certyfikatu.

Ponowne podpisywanie manifestów aplikacji i wdrażania

W tej procedurze przyjęto założenie, że wprowadzono już zmiany w pliku manifestu aplikacji (manifest). Aby uzyskać więcej informacji, zobacz How to: Change deployment properties (Instrukcje: zmienianie właściwości wdrożenia).

Uwaga

W technologii ClickOnce dla platformy .NET Core 3.1 i .NET 5 lub nowszej użyj polecenia dotnet-mage.exe zamiast narzędzia Mage.exe. Aby uzyskać więcej informacji, zobacz ClickOnce dla platformy .NET.

Aby ponownie podpisać manifesty aplikacji i wdrożenia za pomocą narzędzia Mage.exe

  1. Otwórz okno wiersza polecenia programu Visual Studio.

  2. Zmień katalogi na folder zawierający pliki manifestu, które chcesz podpisać.

  3. Wpisz następujące polecenie, aby podpisać plik manifestu aplikacji. Zastąp ciąg ManifestFileName nazwą pliku manifestu i rozszerzeniem. Zastąp wartość Certificate względną lub w pełni kwalifikowaną ścieżką pliku certyfikatu i zastąp wartość Password hasłem certyfikatu.

    mage -sign ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Możesz na przykład uruchomić następujące polecenie, aby podpisać manifest aplikacji dla dodatku, aplikacji Formularz systemu Windows lub aplikacji przeglądarki Windows Presentation Foundation. Certyfikaty tymczasowe utworzone przez program Visual Studio nie są zalecane do wdrożenia w środowiskach produkcyjnych.

    mage -sign WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -sign ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -sign WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  4. Wpisz następujące polecenie, aby zaktualizować i podpisać plik manifestu wdrożenia, zastępując nazwy symboli zastępczych tak jak w poprzednim kroku.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Można na przykład uruchomić następujące polecenie, aby zaktualizować i podpisać manifest wdrożenia dodatku programu Excel, aplikacji Windows Forms lub aplikacji przeglądarki Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Opcjonalnie skopiuj główny manifest wdrożenia (publish\appname.application>) do katalogu wdrażania wersji (publish\Application Files\<appname>_<version>).<

Aktualizowanie i ponowne podpisywanie manifestów aplikacji i wdrożenia

W tej procedurze przyjęto założenie, że wprowadzono już zmiany w pliku manifestu aplikacji (manifest), ale istnieją inne pliki, które zostały zaktualizowane. Po zaktualizowaniu plików należy również zaktualizować skrót reprezentujący plik.

Aby zaktualizować i ponownie podpisać manifesty aplikacji i wdrożenia za pomocą narzędzia Mage.exe

  1. Otwórz okno wiersza polecenia programu Visual Studio.

  2. Zmień katalogi na folder zawierający pliki manifestu, które chcesz podpisać.

  3. Usuń rozszerzenie .deploy pliku z plików w folderze danych wyjściowych publikowania.

  4. Wpisz następujące polecenie, aby zaktualizować manifest aplikacji przy użyciu nowych skrótów dla zaktualizowanych plików i podpisać plik manifestu aplikacji. Zastąp ciąg ManifestFileName nazwą pliku manifestu i rozszerzeniem. Zastąp wartość Certificate względną lub w pełni kwalifikowaną ścieżką pliku certyfikatu i zastąp wartość Password hasłem certyfikatu.

    mage -update ManifestFileName.manifest -CertFile Certificate -Password Password
    

    Możesz na przykład uruchomić następujące polecenie, aby podpisać manifest aplikacji dla dodatku, aplikacji Formularz systemu Windows lub aplikacji przeglądarki Windows Presentation Foundation. Certyfikaty tymczasowe utworzone przez program Visual Studio nie są zalecane do wdrożenia w środowiskach produkcyjnych.

    mage -update WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  5. Wpisz następujące polecenie, aby zaktualizować i podpisać plik manifestu wdrożenia, zastępując nazwy symboli zastępczych tak jak w poprzednim kroku.

    mage -update DeploymentManifest -appmanifest ApplicationManifest -CertFile Certificate -Password Password
    

    Można na przykład uruchomić następujące polecenie, aby zaktualizować i podpisać manifest wdrożenia dodatku programu Excel, aplikacji Windows Forms lub aplikacji przeglądarki Windows Presentation Foundation.

    mage -update WindowsFormsApplication1.application -appmanifest WindowsFormsApplication1.exe.manifest -CertFile ..\WindowsFormsApplication1_TemporaryKey.pfx
    mage -update ExcelAddin1.vsto -appmanifest ExcelAddin1.dll.manifest -CertFile ..\ExcelAddIn1_TemporaryKey.pfx
    mage -update WpfBrowserApplication1.xbap -appmanifest WpfBrowserApplication1.exe.manifest -CertFile ..\WpfBrowserApplication1_TemporaryKey.pfx
    
  6. Dodaj rozszerzenie .deploy file z powrotem do plików, z wyjątkiem plików manifestu aplikacji i wdrożenia.

  7. Opcjonalnie skopiuj główny manifest wdrożenia (publish\appname.application>) do katalogu wdrażania wersji (publish\Application Files\<appname>_<version>).<