Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird ein Feature von ClickOnce beschrieben, das in .NET Framework, Version 3.5, eingeführt wurde, das die Bereitstellung von ClickOnce-Anwendungen von mehreren Netzwerkstandorten ermöglicht, ohne die ClickOnce-Manifeste erneut zu signieren oder zu ändern.
Hinweis
Bei der Neusignierung handelt es sich weiterhin um die bevorzugte Methode für die Bereitstellung neuer Versionen von Anwendungen. Verwenden Sie wann immer möglich die Austrittsmethode. Weitere Informationen finden Sie unter Mage.exe (Manifestgenerierung und Bearbeitungstool).
Entwickler von Drittanbietern und ISVs können sich für dieses Feature entscheiden, sodass es ihren Kunden einfacher ist, ihre Anwendungen zu aktualisieren. Dieses Feature kann in den folgenden Situationen verwendet werden:
Beim Aktualisieren einer Anwendung, nicht für die erste Installation einer Anwendung.
Wenn nur eine Konfiguration der Anwendung auf einem Computer vorhanden ist. Wenn beispielsweise eine Anwendung so konfiguriert ist, dass sie auf zwei verschiedene Datenbanken verweist, können Sie dieses Feature nicht verwenden.
Bereitstellungsanbieter aus Bereitstellungsmanifesten ausschließen
In .NET Framework 2.0 und .NET Framework 3.0 muss jede ClickOnce-Anwendung, die auf dem System für die Offlineverfügbarkeit installiert wird, ein deploymentProvider Element im Bereitstellungsmanifest auflisten. Der deploymentProvider Speicherort wird häufig als Updatespeicherort bezeichnet. Er ist der Speicherort, an dem ClickOnce nach Anwendungsupdates sucht. Diese Anforderung sowie die Notwendigkeit, dass Anwendungsher ihre Bereitstellungen signieren müssen, erschwerte es einem Unternehmen, eine ClickOnce-Anwendung von einem Anbieter oder einem anderen Drittanbieter zu aktualisieren. Außerdem ist es schwieriger, dieselbe Anwendung von mehreren Standorten im selben Netzwerk bereitzustellen.
Mit Änderungen, die an ClickOnce in .NET Framework 3.5 vorgenommen wurden, ist es möglich, dass ein Drittanbieter eine ClickOnce-Anwendung für eine andere Organisation bereitstellt, die dann die Anwendung in einem eigenen Netzwerk bereitstellen kann.
Um dieses Feature nutzen zu können, müssen Entwickler von ClickOnce-Anwendungen aus ihren Bereitstellungsmanifesten ausschließen deploymentProvider . Diese Anforderung bedeutet, dass Sie das -providerUrl Argument ausschließen müssen, wenn Sie Bereitstellungsmanifeste mit Mage.exeerstellen. Oder wenn Sie Bereitstellungsmanifeste mit MageUI.exegenerieren, müssen Sie sicherstellen, dass das Textfeld "Startspeicherort " auf der Registerkarte "Anwendungsmanifest " leer bleibt.
Hinweis
Verwenden Sie in ClickOnce für .NET Core 3.1 und .NET 5 oder höher dotnet-mage.exe anstelle von Mage.exe. Weitere Informationen finden Sie unter ClickOnce für .NET.
deploymentProvider und Anwendungsupdates
Ab .NET Framework 3.5 müssen Sie deploymentProvider in Ihrem Bereitstellungsmanifest nicht mehr angeben, um eine ClickOnce-Anwendung sowohl für die Online- als auch die Offlineverwendung bereitzustellen. Diese Änderung unterstützt das Szenario, in dem Sie die Bereitstellung selbst verpacken und signieren müssen, während Sie anderen Unternehmen erlauben, die Anwendung über ihre Netzwerke bereitzustellen.
Wichtig ist, dass Anwendungen, die das deploymentProvider Tag ausschließen, während Updates ihren Installationsspeicherort nicht ändern können, bis sie ein Update bereitstellen, das das deploymentProvider Tag erneut enthält.
Hier sind zwei Beispiele, um diesen Punkt zu verdeutlichen. Im ersten Beispiel veröffentlichen Sie eine ClickOnce-Anwendung ohne deploymentProvider Tag, und Sie bitten Benutzer, sie zu http://www.adatum.com/MyApplication/installieren. Wenn Sie das nächste Update der Anwendung von http://subdomain.adatum.com/MyApplication/ veröffentlichen möchten, haben Sie keine Möglichkeit, dies im Bereitstellungsmanifest anzugeben, das sich in http://www.adatum.com/MyApplication/ befindet. Sie haben zwei Möglichkeiten:
Bitten Sie Ihre Benutzer, die vorherige Version zu deinstallieren und die neue Version vom neuen Speicherort zu installieren.
Fügen Sie ein Update
http://www.adatum.com/MyApplication/hinzu, das einendeploymentProviderenthält, der aufhttp://www.adatum.com/MyApplication/verweist. Lassen Sie dann später ein weiteres Update herausgeben, dasdeploymentProvideraufhttp://subdomain.adatum.com/MyApplication/verweist.Im zweiten Beispiel veröffentlichen Sie eine ClickOnce-Anwendung, die angibt
deploymentProvider, und entscheiden sie dann, sie zu entfernen. Nachdem die neue Version ohnedeploymentProviderauf die Clients heruntergeladen wurde, können Sie den Pfad, der für Updates verwendet wird, erst umleiten, wenn Sie eine Version Ihrer Anwendung freigeben, bei derdeploymentProviderwiederhergestellt wurde. Wie im ersten Beispiel mussdeploymentProviderzunächst auf den aktuellen Aktualisierungsspeicherort und nicht auf den neuen Speicherort verweisen. Wenn Sie in diesem Fall versuchen, eindeploymentProvidereinzufügen, das sich aufhttp://subdomain.adatum.com/MyApplication/bezieht, schlägt das nächste Update fehl.
Erstellen einer Bereitstellung
Eine schrittweise Anleitung zum Erstellen von Bereitstellungen, die von verschiedenen Netzwerkstandorten bereitgestellt werden können, finden Sie unter Walkthrough: Manually deploy a ClickOnce application that does not require re-signing and that preserves branding information.