Click-Once-Deployment (COD)
Eintrag zuletzt aktualisiert am: 24.05.2022
Click-Once-Deployment ist ein seit langem etabliertes Verfahren zur Verbreitung von .NET-Anwendungen, das es seit der Version 2.0 des klassisches
.NET Framework gibt. Es erlaubt die einfache Verteilung und automatische Aktualisierung von Windows-Anwendungen über
Netzwerklaufwerke und
Webserver. Die Installation einer
Click-Once-basierten Anwendung ist für jeden Windows-Benutzer ohne Administratorrechte möglich und erfolgt im lokalen Benutzerverzeichnis. Für viele Anwendungsarten wird die Verteilung ("Deployment") dadurch stark vereinfacht.
Click-Once-Deployment ist eine mit
.NET 2.0 eingeführte Weiterentwicklung des
No-Touch-Deployment (
NTD).
Click-Once-Deployment gab es zunächst nicht für .NET Core.
Click-Once-Deployment ist Oktober 2020 nun nicht nur für
.NET 5.0, sondern auch
.NET Core 3.0 und 3.1 verfügbar. Ein
Click-Once-Deployment-Paket kann über
Visual Studio (ab Version 16.8 Preview 5) über Deploy/Folder/
Click-Once oder das Kommandozeilenwerkzeug mage.dot für die
.NET SDK CLI [
https://www.nuget.org/packages/Microsoft.DotNet.Mage] erstellen.
Details zu Click-Once-Deployment
Mit
Visual Studio erstellt der Entwickler ein
Click-Once-Paket, das er auf einem Netzlaufwerk oder einen
Webserver ablegt. Der Benutzer erhält den Link zu der Manifest-Datei. Eine
Click-Once-Anwendung wird beim ersten Aufruf dieses Manifestes für den aktuellen Benutzer installiert und bei Bedarf automatisch aktualisiert.
Der Endbenutzer startet die Anwendung durch einen Mausklick auf einen Link in Windows oder auf einer Webseite. Sofern die Anwendung in seinem lokalen Application Cache (/Dokumente und Einstellungen/(User)/Lokale Einstellungen/My Applications) noch nicht in der aktuellsten Fassung existiert, lädt das
.NET Framework die Anwendung herunter und installiert sie.
Ein Vorteil gegenüber
NTD ist die Möglichkeit, Einträge im Start-Menü und in der Softwarelis-te in der Systemsteuerung vorzunehmen.
Click-Once-Anwendungen funktionieren auch, wenn die Quelle nach dem ersten Herunterladen nicht mehr verfügbar ist. Das
.NET Framework und andere Voraussetzungen (
MDAC 9,
MSDE, J#, etc.) werden bei Bedarf mitinstalliert.
Visual Studio bietet eine Unterstützung für das Publizieren von
Click-Once-Anwendungen direkt aus der DIE heraus und erstellt automatisch eine
HTML-Seite für den Download.
Möglich wird die automatische Aktualisierung durch eine doppelte Indirektion (
Manifest-based Activation): Der Link zeigt nicht auf die
EXE, sondern auf ein
Deployment Manifest (
XML-Datei), das wiederum auf das Application Manifest der aktuellsten Version zeigt. Das Applicati-on Manifest enthält schließlich die Informationen über den Start einer Anwendung und die Abhängigkeit von anderen Anwendungen. Wichtig für die automatische Aktualisierung ist, dass die Anwendung nicht nur erneut publiziert wird, sondern auch tatsächlich eine neue Versionsnummer erhält. Signifikant sind hierbei die ersten drei Sektionen der Versionsnummer.
Seit .Net 3.5 SP1 ist auch die Verteilung von
VSTO-Anwendungen mit
Click-Once möglich.
Mit einem Trick kann man auch Silverlight-Anwendungen mit
Click-Once-Verteilen.
Vergleich zu Java
Click-Once-Deployment entspricht konzeptionell
Java Web Start.