- ClickOnce
-
ClickOnce ist eine Technik von Microsoft, die es ermöglicht, Windows-Anwendungen über das Internet mit nur einem Klick zu starten. Solche Anwendungen sind auch unter dem Namen Smart Clients bekannt. Es unterstützt mit Windows Forms oder Windows Presentation Foundation entwickelte Applikationen, andere Applikationen können über den sogenannten Updater Application Block[1]aktualisiert werden. ClickOnce ist ähnlich Java Web Start für die Java-Plattform oder Zero Install für Linux.
Inhaltsverzeichnis
Beschreibung
ClickOnce gibt dem Benutzer die Möglichkeit, Programme nur durch Klicken eines Links auf einer Webseite zu installieren und auszuführen. Die Kernprinzipien von ClickOnce sind, die Einfachheit von Webanwendungen zum Windows-Nutzer zu bringen. Darüber hinaus zielt ClickOnce auf das Lösen dreier weiterer Probleme von herkömmlichen Modellen der Softwareverteilung ab: Die Schwierigkeit, ein eingesetztes Programm zu aktualisieren, die Einwirkung eines Programms auf den Computer des Nutzers, und die Notwendigkeit von administrativen Benutzerrechten zum Installieren von Programmen.
Über ClickOnce verbreitete Programme werden als „wenig beeinflussend“ eingestuft, weil sie nur für den einzelnen Nutzer, nicht für den gesamten Rechner installiert werden (ClickOnce-Cache). Zum Installieren werden keine Administratorrechte benötigt. Jedes ClickOnce-Programm ist vom anderen separiert. Das bedeutet, dass eine ClickOnce-Applikation eine andere nicht „unterbrechen“ kann.
ClickOnce setzt CAS (Code Access Security) ein, um sicherzustellen, dass Systemfunktionen nicht von einem ClickOnce-Programm aus dem Internet aufgerufen werden können, was die Sicherheit der Daten und des Systems allgemein gewährleistet.
Programme
Das ClickOnce-Modell unterstützt zwei Arten von Programmen: installierte Programme (ähnlich konventionellen Windows-Programmen mit Windows-Startmenü-Integration) und Online-Anwendungen (im Browser gehostete Programme, die nicht installiert, sondern nur ausgeführt und zwischengespeichert werden). ClickOnce-Programme können über eine Internetseite, eine Netzwerkfreigabe oder sogar von einem Dateispeicherort verteilt werden.
Die ClickOnce-Verbreitungstechnologie ist in das Visual-Studio-2005/2008-Projektsystem integriert und wird von der MSBuild-Technologie nativ unterstützt.
Nachdem ClickOnce lange Zeit nur mit dem Internet Explorer funktionierte, wird mit dem Service Pack 1 für das .NET Framework 3.5 auch der Mozilla Firefox unterstützt. Bei der Installation des Service Packs wird eine Erweiterung (Add-on) Namens „Microsoft .NET Framework Assistant“ in Firefox installiert, welche sich bei den ersten Versionen erst durch einen Eingriff in die Registry deinstallieren ließ. Die User-Agent-Kennung wird optional um die Angabe der installierten .NET-Version ergänzt, damit der Server – wie beim Internet Explorer – auf dessen Existenz reagieren kann.[2]
Manifeste
Eine ClickOnce-Anwendung wird durch zwei XML-Manifeste kontrolliert: Ein Deployment-Manifest und ein Programm-Manifest. Die Deployment-Manifest-Datei beschreibt das Verbreitungsmodell: die aktuelle Version, Aktualisierungsverhalten, Identität des Veröffentlichers, sowie eine digitale Signatur. Dieses Manifest soll von den Administratoren, die die Verbreitung regeln, genutzt werden. Das Programmmanifest – eine .exe.manifest-Datei – beschreibt die Assemblys des Programms, referenzierte Bibliotheken und listet Berechtigungen auf, die vom Programm benötigt werden. Diese Datei soll vom Entwickler des Programms genutzt werden. Um eine ClickOnce-Anwendung zu starten, klickt der Nutzer auf die Deployment-Manifest-Datei. [3]
Aktualisierungen
ClickOnce-Programme sind selbstaktualisierend; sie können automatisch beim Start auf die Verfügbarkeit einer neueren Version prüfen und alle aktualisierten Dateien ersetzen. Für zu installierende Programme bietet ClickOnce auch einige Aktualisierungsoptionen an. So können Programme zum Beispiel so konfiguriert werden, dass sie gleich beim Start oder nach dem Start auf verfügbare Aktualisierungen überprüfen. ClickOnce bietet außerdem eine Programmierschnittstelle, um das Aktualisierungsverhalten den persönlichen Bedürfnissen anzupassen. Es gibt außerdem Unterstützung für erforderliche oder zwingend notwendige Aktualisierungen, für die Verwaltung fortlaufender Aktualisierungen und das Sicherstellen, dass die gesamte Nutzerdatenbank in kürzester Zeit auf eine neue Version gebracht werden kann.
Literatur
- Sayed Y. Hashimi , Sayed Ibrahim Hashimi: Deploying .NET Applications: Learning MSBuild and ClickOnce, Springer 2008, ISBN 978-1590596524 [4]
Siehe auch
Einzelnachweise
- ↑ Updater Application Block version 2.0
- ↑ http://msdn.microsoft.com/de-de/library/cc716877.aspx
- ↑ http://www.it-visions.de/glossar/alle/692/Click-Once-Deployment.aspx
- ↑ http://www.apress.com/resource/bookfile/2799
Weblinks
- ClickOnce-Sicherheit und Bereitstellung im MSDN
- Einführung in die ClickOnce-Bereitstellung im MSDN
- ClickOnce Ressources – Umfangreiche englischsprachige Linklist zu dem Thema
- Click Once Deployment - Advanced - MSDN Webcast
- Erklärung des Begriffs: Click-Once-Deployment (COD) - Was ist Click-Once-Deployment (COD)? - Artikel auf www-it-visions.de
Wikimedia Foundation.