Uygulama ve dağıtım bildirimlerini yeniden imzalama

Windows Forms uygulamaları, Windows Presentation Foundation uygulamaları (xbap) veya Office çözümleri için uygulama bildiriminde dağıtım özelliklerinde değişiklik yaptıktan sonra, hem uygulama hem de dağıtım bildirimlerini bir sertifikayla yeniden imzalamanız gerekir. Bu işlem, üzerinde oynanmış dosyaların son kullanıcı bilgisayarlarına yüklenmemesini sağlamaya yardımcı olur.

Bildirimleri yeniden imzalayabileceğiniz bir diğer senaryo da, müşterilerinizin uygulama ve dağıtım bildirimlerini kendi sertifikalarıyla imzalamak istemesidir.

Uygulama ve Dağıtım Bildirimlerini yeniden imzalama

Bu yordamda, uygulama bildirim dosyanızda (.manifest) zaten değişiklik yaptığınız varsayılır. Daha fazla bilgi için bkz . Nasıl yapılır: Dağıtım özelliklerini değiştirme.

Dekont

.NET Core 3.1 ve .NET 5 veya üzeri için ClickOnce'da, Mage.exe yerine dotnet-mage.exe kullanın. Daha fazla bilgi için bkz . .NET için ClickOnce.

Uygulama ve dağıtım bildirimlerini Mage.exe ile yeniden imzalamak için

  1. Visual Studio Komut İstemi penceresini açın.

  2. Dizinleri, imzalamak istediğiniz bildirim dosyalarını içeren klasöre değiştirin.

  3. Uygulama bildirim dosyasını imzalamak için aşağıdaki komutu yazın. ManifestFileName değerini bildirim dosyanızın adıyla ve uzantıyla değiştirin. Sertifika'nın yerine sertifika dosyasının göreli veya tam yolunu yazın ve Parola'nın yerine sertifikanın parolasını yazın.

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

    Örneğin, bir eklenti, Windows Form uygulaması veya Windows Presentation Foundation tarayıcı uygulaması için bir uygulama bildirimi imzalamak için aşağıdaki komutu çalıştırabilirsiniz. Visual Studio tarafından oluşturulan geçici sertifikalar, üretim ortamlarına dağıtım için önerilmez.

    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. Önceki adımda olduğu gibi yer tutucu adlarını değiştirerek dağıtım bildirim dosyasını güncelleştirmek ve imzalamak için aşağıdaki komutu yazın.

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

    Örneğin, bir Excel eklentisi, Windows Forms uygulaması veya Windows Presentation Foundation tarayıcı uygulaması için dağıtım bildirimini güncelleştirmek ve imzalamak için aşağıdaki komutu çalıştırabilirsiniz.

    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. İsteğe bağlı olarak, ana dağıtım bildirimini (publish\<appname.application>) sürüm dağıtım dizininize (publish\Application Files\<appname>_<version>) kopyalayın.

Uygulama ve dağıtım bildirimlerini güncelleştirme ve yeniden imzalama

Bu yordam, uygulama bildirim dosyanızda (.manifest) zaten değişiklik yaptığınız, ancak güncelleştirilmiş başka dosyalar olduğunu varsayar. Dosyalar güncelleştirildiğinde, dosyayı temsil eden karmanın da güncelleştirilmiş olması gerekir.

Uygulama ve dağıtım bildirimlerini Mage.exe ile güncelleştirmek ve yeniden imzalamak için

  1. Visual Studio Komut İstemi penceresini açın.

  2. Dizinleri, imzalamak istediğiniz bildirim dosyalarını içeren klasöre değiştirin.

  3. Yayımlama çıktı klasöründeki dosyalardan .deploy dosya uzantısını kaldırın.

  4. Uygulama bildirimini güncelleştirilmiş dosyaların yeni karmalarıyla güncelleştirmek ve uygulama bildirim dosyasını imzalamak için aşağıdaki komutu yazın. ManifestFileName değerini bildirim dosyanızın adıyla ve uzantıyla değiştirin. Sertifika'nın yerine sertifika dosyasının göreli veya tam yolunu yazın ve Parola'nın yerine sertifikanın parolasını yazın.

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

    Örneğin, bir eklenti, Windows Form uygulaması veya Windows Presentation Foundation tarayıcı uygulaması için bir uygulama bildirimi imzalamak için aşağıdaki komutu çalıştırabilirsiniz. Visual Studio tarafından oluşturulan geçici sertifikalar, üretim ortamlarına dağıtım için önerilmez.

    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. Önceki adımda olduğu gibi yer tutucu adlarını değiştirerek dağıtım bildirim dosyasını güncelleştirmek ve imzalamak için aşağıdaki komutu yazın.

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

    Örneğin, bir Excel eklentisi, Windows Forms uygulaması veya Windows Presentation Foundation tarayıcı uygulaması için dağıtım bildirimini güncelleştirmek ve imzalamak için aşağıdaki komutu çalıştırabilirsiniz.

    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. Uygulama ve dağıtım bildirim dosyaları dışında .deploy dosya uzantısını dosyalara geri ekleyin.

  7. İsteğe bağlı olarak, ana dağıtım bildirimini (publish\<appname.application>) sürüm dağıtım dizininize (publish\Application Files\<appname>_<version>) kopyalayın.