Übersicht über die ClickOnce-Bereitstellung

Aktualisiert: November 2007

ClickOnce ist eine Bereitstellungstechnologie, mit der sich selbst aktualisierende Windows-Anwendungen erstellt werden können, die mit minimaler Benutzerinteraktion installiert und ausgeführt werden. Die ClickOnce-Bereitstellung löst drei grundlegende Probleme:

  • Schwierigkeiten beim Aktualisieren von Anwendungen. Bei der Bereitstellung mit Microsoft Windows Installer muss der Benutzer bei jeder Aktualisierung einer Anwendung die gesamte Anwendung neu installieren. Bei der ClickOnce-Bereitstellung können Sie Aktualisierungen automatisch zur Verfügung stellen. Dabei werden nur die Teile der Anwendung heruntergeladen, die geändert wurden. Anschließend wird die vollständige aktualisierte Anwendung von einem neuen parallelen Ordner aus neu installiert.

  • Auswirkungen auf den Computer des Benutzers. Bei der Bereitstellung mit Windows Installer hängen Anwendungen oft von gemeinsam genutzten Komponenten ab. Dies kann zu Versionskonflikten führen. Bei der ClickOnce-Bereitstellung ist jede Anwendung völlig unabhängig und verursacht keine Konflikte mit anderen Anwendungen.

  • Sicherheitsberechtigungen. Bei der Bereitstellung mit Windows Installer sind Administratorberechtigungen erforderlich. Außerdem ist nur eine eingeschränkte Benutzerinstallation möglich. Bei der ClickOnce-Bereitstellung kann die Installation durch Benutzer ohne Administratorberechtigungen erfolgen. Es werden nur die Rechte für Codezugriffssicherheit gewährt, die für die Anwendung erforderlich sind.

In der Vergangenheit haben diese Probleme manchmal dazu geführt, dass Webanwendungen anstelle von Windows-Anwendungen entwickelt wurden. Dabei gingen die umfangreichen Features für die Benutzeroberfläche und die Reaktionsgeschwindigkeit von Windows Forms verloren; gewonnen wurde eine einfache Installation. Bei Anwendungen, die mit ClickOnce bereitgestellt werden, können Sie die Vorzüge beider Technologien nutzen.

Was ist eine ClickOnce-Anwendung?

Kurz gesagt ist eine ClickOnce-Anwendung eine Windows Presentation Foundation-, Windows Forms- oder Konsolenanwendung, die unter Verwendung der ClickOnce-Technologie veröffentlicht wird. Sie können eine ClickOnce-Anwendung auf drei Arten veröffentlichen: auf einer Webseite, in einer Dateifreigabe im Netzwerk oder auf einem Datenträger wie einer CD-ROM. Eine ClickOnce-Anwendung kann auf dem Computer des Endbenutzers installiert und lokal ausgeführt werden, auch wenn der Computer offline ist, oder sie kann als nur online verfügbares Programm ausgeführt werden, ohne dass auf dem Computer des Endbenutzers Dateien installiert werden. Weitere Informationen finden Sie unter Auswählen einer Strategie für die ClickOnce-Bereitstellung.

ClickOnce-Anwendungen können sich selbst aktualisieren. Dabei können sie prüfen, ob neuere Versionen vorliegen, und die aktualisierten Dateien automatisch austauschen. Der Entwickler kann das Aktualisierungsverhalten festlegen. Der Netzwerkadministrator kann ebenfalls Aktualisierungsstrategien steuern und eine Aktualisierung z. B. als obligatorisch kennzeichnen. Der Endbenutzer oder Administrator kann ein Update auch auf eine vorherige Version zurücksetzen. Weitere Informationen finden Sie unter Auswählen einer Strategie für die ClickOnce-Aktualisierung.

Da ClickOnce-Anwendungen aufgrund ihrer Konzeption isoliert sind, kann das Installieren oder Ausführen einer ClickOnce-Anwendung die Konsistenz von Code vorhandener Anwendungen nicht zerstören. ClickOnce-Anwendungen sind unabhängig. Jede ClickOnce-Anwendung wird in einem sicheren, benutzer- und anwendungsspezifischen Cache installiert und in diesem ausgeführt. In der Standardeinstellung werden ClickOnce-Anwendungen in der Sicherheitszone für das Internet oder Intranet ausgeführt. Falls notwendig kann die Anwendung erhöhte Sicherheitsberechtigungen anfordern. Weitere Informationen finden Sie unter ClickOnce-Bereitstellung und Sicherheit.

Funktionsweise der ClickOnce-Bereitstellung

Der Kern der ClickOnce-Bereitstellungsarchitektur beruht auf zwei XML-Manifestdateien: einem Anwendungsmanifest und einem Bereitstellungsmanifest.

Im Anwendungsmanifest wird die Anwendung selbst beschrieben. Eingeschlossen sind dabei die Assemblys, die Abhängigkeiten und die Dateien, aus denen die Anwendung besteht, die erforderlichen Berechtigungen und der Speicherort, an dem Updates verfügbar sind. Der Anwendungsentwickler erstellt das Anwendungsmanifest mit dem Webpublishing-Assistenten in Visual Studio 2008 oder mit dem Tool zum Generieren von Manifesten (Mage.exe) in Windows Software Development Kit (SDK). Weitere Informationen finden Sie unter Gewusst wie: Veröffentlichen einer ClickOnce-Anwendung.

Im Bereitstellungsmanifest wird beschrieben, wie die Anwendung bereitgestellt wird. Eingeschlossen sind dabei der Speicherort des Anwendungsmanifests sowie die Version der Anwendung, die auf den Clients ausgeführt wird. Ein Administrator erstellt das Bereitstellungsmanifest mit dem Tool zum Generieren von Manifesten (Mage.exe) in Windows SDK.

Hinweis:

Das Bereitstellungsmanifest kann auch mit dem Webpublishing-Assistenten in Microsoft Visual Studio 2005 generiert werden.

Nach der Erstellung wird das Bereitstellungsmanifest an den Bereitstellungsspeicherort kopiert. Hierbei kann es sich um einen Webserver, eine Dateifreigabe im Netzwerk oder einen Datenträger wie eine CD handeln. Außerdem werden das Anwendungsmanifest und alle Anwendungsdateien an einen Bereitstellungsspeicherort kopiert, der im Bereitstellungsmanifest angegeben ist. Dies kann derselbe Bereitstellungsspeicherort oder ein anderer Speicherort sein. Wenn Sie den Webpublishing-Assistenten in Microsoft Visual Studio 2005 verwenden, werden die Kopiervorgänge automatisch ausgeführt.

Hinweis:

Wenn der Entwickler auch Administrator ist, d. h. Administratorberechtigungen für die Website oder die Dateifreigabe besitzt, auf bzw. in der das Bereitstellungsmanifest bereitgestellt wird, ist nur dieses Manifest erforderlich. Wenn der Entwickler nicht der Administrator ist, muss der Administrator das Befehlszeilentool verwenden, um das Manifest zu aktualisieren und zu signieren.

Nach der Bereitstellung am Bereitstellungsspeicherort können Endbenutzer die Anwendung herunterladen und installieren, indem Sie auf einer Webseite oder in einem Ordner auf das Symbol doppelklicken, dass die Datei mit dem Bereitstellungsmanifest darstellt. In den meisten Fällen wird ein einfaches Dialogfeld angezeigt, in dem der Endbenutzer die Installation bestätigen muss. Anschließend erfolgt die die Installation ohne weiteren Eingriff, und die Anwendung wird gestartet. In Situationen, in denen für die Anwendungen höhere Berechtigungen erforderlich sind, wird der Benutzer im Dialogfeld außerdem dazu aufgefordert, die Berechtigungen zu gewähren, bevor die Installation fortfahren kann.

Die Anwendung wird dem Startmenü des Benutzers und der Gruppe Software in der Systemsteuerung hinzugefügt. Im Gegensatz zu anderen Bereitstellungstechnologien wird dem Ordner Programme, der Registrierung und dem Desktop nichts hinzugefügt, und für die Installation sind keine Administratorberechtigungen erforderlich.

Hinweis:

Es kann auch festgelegt werden, dass die Anwendung nicht dem Startmenü und der Gruppe Software hinzugefügt wird. Die Anwendung verhält sich dann wie eine Webanwendung. Weitere Informationen finden Sie unter Auswählen einer Strategie für die ClickOnce-Bereitstellung.

Beim Erstellen einer aktualisierten Version der Anwendung muss der Entwickler auch ein neues Anwendungsmanifest generieren und Dateien an einen Bereitstellungsspeicherort kopieren. Hierbei handelt es sich i. d. R. um einen nebengeordneten Ordner des ursprünglichen Bereitstellungsordners der Anwendung. Der Administrator aktualisiert das Bereitstellungsmanifest, um den Speicherort der neuen Anwendungsversion anzugeben.

Hinweis:

Diese Schritte können mit dem Webpublishing-Assistenten in Microsoft Visual Studio 2005 ausgeführt werden.

Zusätzlich zum Bereitstellungsspeicherort enthält das Bereitstellungsmanifest einen Aktualisierungspfad (eine Webseite oder eine Dateifreigabe im Netzwerk), über den die Anwendung nach aktualisierten Versionen sucht. ClickOncePublish-Eigenschaften geben an, wann und wie oft die Anwendung die Updates überprüfen soll. Das Aktualisierungsverhalten kann im Bereitstellungsmanifest angegeben werden. Mit den ClickOnce-APIs kann es aber auch in der Benutzeroberfläche der Anwendung als Auswahlmöglichkeit für den Benutzer angezeigt werden. Außerdem können die Publish-Eigenschaften verwendet werden, um Updates als obligatorisch zu kennzeichnen oder die Anwendung auf eine frühere Version zurückzusetzen. Weitere Informationen finden Sie unter Auswählen einer Strategie für die ClickOnce-Aktualisierung.

Vergleich zwischen ClickOnce und Windows Installer

In der folgenden Tabelle werden die Features der ClickOnce-Bereitstellung und der Bereitstellung mit Windows Installer verglichen:

Feature

ClickOnce

Windows Installer

Automatische Aktualisierung1

Ja

Ja

Rollback nach der Installation2

Ja

Nein

Aktualisierung aus dem Web

Ja

Nein

Beeinflusst weder gemeinsam genutzte Komponenten noch andere Anwendungen

Ja

Nein

Gewährte Sicherheitsberechtigungen

Gewährt nur die für die Anwendung erforderlichen Berechtigungen (sicherer)

In der Standardeinstellungen volle Vertrauenswürdigkeit (weniger sicher)

Erforderliche Sicherheitsberechtigungen

Internet oder Intranetzone (volle Vertrauenswürdigkeit für CD-ROM-Installation)

Administrator

Signierung von Anwendungs- und Bereitstellungsmanifest

Ja

Nein

Benutzeroberfläche bei der Installation

Eine einzige Eingabeaufforderung

Mehrteiliger Assistent

Installation von Assemblys bei Bedarf

Ja

Nein

Installation von gemeinsam genutzten Dateien

Nein

Ja

Installation von Treibern

Nein

Ja (mit benutzerdefinierten Aktionen)

Installation in globalem Assemblycache

Nein

Ja

Installation für mehrere Benutzer

Nein

Ja

Hinzufügen der Anwendung zum Startmenü

Ja

Ja

Hinzufügen von Anwendungen zur Gruppe Autostart

Nein

Ja

Hinzufügen von Anwendungen zum Menü Favoriten

Nein

Ja

Registrierung von Dateitypen

Nein

Ja

Zugriff auf die Registrierung während der Installation3

Eingeschränkt

Ja

Patchen von Binärdateien

Nein

Ja

Speicherort der Anwendungsinstallation

ClickOnceAnwendungscache

Ordner Programme

Hinweise

1. Bei Windows Installer müssen Sie programmgesteuerte Aktualisierungen im Anwendungscode implementieren.

2. Bei ClickOnce ist ein Rollback in Software verfügbar.

3. Bei der ClickOnce-Bereitstellung ist der Zugriff auf HKEY_LOCAL_MACHINE (HKLM) nur mit voller Vertrauenswürdigkeit möglich.

Weitere Informationen finden Sie unter Auswählen einer Bereitstellungsstrategie.

Siehe auch

Aufgaben

Gewusst wie: Veröffentlichen einer ClickOnce-Anwendung

Konzepte

Auswählen einer Strategie für die ClickOnce-Bereitstellung

Auswählen einer Strategie für die ClickOnce-Aktualisierung

ClickOnce-Bereitstellung und Sicherheit

Auswählen einer Bereitstellungsstrategie

Weitere Ressourcen

ClickOnce-Bereitstellung