Voraussetzungen für Anwendungsbereitstellungen (Windows-Desktop)

Damit Ihre Windows-Desktopanwendung erfolgreich installiert und ausgeführt wird, müssen Sie zunächst alle Komponenten auf dem Zielcomputer installieren, von denen Ihre Anwendung abhängig ist. Die meisten Anwendungen, die mit Visual Studio erstellt wurden, sind beispielsweise vom .NET Framework abhängig. In diesem fall muss die richtige Version von Common Language Runtime auf dem Zielcomputer verfügbar sein, bevor die Anwendung installiert wird.

Sie können diese erforderlichen Komponenten im Dialogfeld Erforderliche Komponenten auswählen und das .NET Framework sowie ggf. andere weitervertreibbare Komponenten im Rahmen der Installation installieren. Dieses Vorgehen wird als Bootstrapping bezeichnet. Visual Studio generiert ein Windows-Programm namens Setup.exe, das auch Bootstrapper genannt wird. Der Bootstrapper installiert diese erforderlichen Komponenten, bevor die Anwendung ausgeführt wird. Weitere Informationen zum Auswählen dieser Voraussetzungen finden Sie unter Dialogfeld Voraussetzungen.

Jede erforderliche Komponente ist ein Bootstrapperpaket. Bei einem Bootstrapperpaket handelt es sich um eine Gruppe von Verzeichnissen und Dateien, die Manifestdateien enthalten, die beschreiben, wie die erforderlichen Komponenten installiert werden müssen. Wenn die erforderlichen Komponenten für die Anwendung nicht im Dialogfeld Erforderliche Komponenten aufgeführt sind, können Sie benutzerdefinierte Bootstrapperpakete erstellen und Visual Studio hinzufügen. Dann können Sie die erforderlichen Komponenten im Dialogfeld Erforderliche Komponenten auswählen. Weitere Informationen finden Sie unter Erstellen von Bootstrapperpaketen.

Standardmäßig ist das Bootstrapping sowohl für die Windows Installer-Bereitstellung (mithilfe von Setupprojekten in Visual Studio) als auch für die ClickOnce-Bereitstellung aktiviert. Der für die Windows Installer-Bereitstellung generierte Bootstrapper ist nicht signiert, aber in der ClickOnce-Bereitstellung ist der Bootstrapper signiert. Sie können Bootstrapping für eine Komponente deaktivieren, Sie sollten dies aber nur tun, wenn Sie sicher sind, dass die richtige Version der Komponente bereits auf allen Zielcomputern installiert ist.

Bootstrapping und ClickOnce-Bereitstellung

Vor der Installation einer Anwendung auf einem Clientcomputer untersucht ClickOnce den Client, um sicherzustellen, dass im Anwendungsmanifest angegebene Anforderungen erfüllt werden. Dazu zählen folgende erforderliche Elemente:

  • Die mindestens erforderliche Version von Common Language Runtime, die als Assemblyabhängigkeit im Anwendungsmanifest angegeben ist.

  • Die für die Anwendung mindestens erforderliche Version des Windows-Betriebssystems, wie im Anwendungsmanifest mit dem <osVersionInfo>-Element angegeben. (Siehe <dependency>-Element.)

  • Die Mindestversion aller Assemblys, die im globalen Assemblycache (GAC) vorinstalliert sein müssen, wie von Deklarationen der Assemblyabhängigkeiten im Assemblymanifest angegeben.

    ClickOnce kann fehlende erforderliche Komponenten bestimmen, und Sie können erforderliche Komponenten mit Bootstrap installieren. Weitere Informationen finden Sie unter Gewusst wie: Installieren von erforderlichen Komponenten mit einer ClickOnce-Anwendung.

Hinweis

Um die Werte in den Manifesten zu ändern, die von Tools wie Visual Studio und MageUI.exe generiert wurden, müssen Sie das Anwendungsmanifest in einem Text-Editor bearbeiten. Signieren Sie anschließend die Anwendungs- und Bereitstellungsmanifeste erneut. Weitere Informationen finden Sie unter How to: Re-sign Application and Deployment Manifests (Vorgehensweise: Erneutes Signieren von Anwendungs- und Bereitstellungsmanifesten).

Wenn Sie Visual Studio und ClickOnce für die Bereitstellung der Anwendung verwenden, hängen die standardmäßig ausgewählten Bootstrapperpakete von der .NET Framework-Version in der Projektmappe ab. Wenn Sie jedoch die .NET Framework-Zielversion ändern, müssen Sie die Optionen im Dialogfeld Erforderliche Komponenten manuell aktualisieren.

.NET Framework-Zielversion Ausgewählte Bootstrapperpakete
.NET Framework 4 Client Profile .NET Framework 4 Client Profile

Windows Installer 3.1
.NET Framework 4 .NET Framework 4

Windows Installer 3.1

Bei der ClickOnce-Bereitstellung verweist die Seite Publish.htm, die vom ClickOnce-Webpublishing-Assistenten generiert wird, auf einen Link, mit dem nur die Anwendung installiert wird, oder auf einen Link, mit dem die Anwendung und die Bootstrappingkomponenten installiert werden.

Wenn Sie den Bootstrapper mit dem ClickOnce-Webpublishing-Assistenten oder der Seite „Veröffentlichen“ in Visual Studio generieren, wird Setup.exe automatisch signiert. Wenn Sie jedoch das Zertifikat des Kunden zum Signieren des Bootstrappers verwenden möchten, können Sie die Datei später signieren.

Bootstrapping und MSBuild

Wenn Sie nicht Visual Studio verwenden, sondern die Anwendungen über die Befehlszeile kompilieren, können Sie die ClickOnce-Bootstrappinganwendung mit einer Microsoft Build Engine-Aufgabe (MSBuild) erstellen. Weitere Informationen finden Sie unter GenerateBootstrapper-Aufgabe.

Als Alternative zum Bootstrapping können Sie Komponenten mit einem elektronischen Softwareverteilungssystem wie Microsoft Systems Management Server (SMS) vorab bereitstellen.

Bootstrapper-Befehlszeilenargumente („Setup.exe“)

Die von Visual Studio generierte Setup.exe und die MSBuild-Aufgaben unterstützen den folgenden kleinen Satz von Befehlszeilenargumenten. Alle darüber hinaus gehenden Argumente werden an das Installationsprogramm der Anwendung weitergeleitet.

Wenn Sie Bootstrapperoptionen ändern, müssen Sie den nicht signierten Bootstrapper ändern und die Bootstrapperdatei später signieren.

Befehlszeilenargument Beschreibung
-?, -h, -help Zeigt das Dialogfeld der Hilfe an.
-url, -componentsurl Zeigt die gespeicherte URL und Komponenten-URLs für diese Installation an.
-url=location Legt die URL fest, bei der Setup.exe nach der ClickOnce-Anwendung sucht.
-componentsurl=location Legt die URL fest, unter der Setup.exe nach Abhängigkeiten wie dem .NET Framework sucht.
-homesite=true|false Bei true werden die Abhängigkeiten vom bevorzugten Speicherort auf der Website des Anbieters heruntergeladen. Diese Einstellung setzt die Einstellung -componentsurl außer Kraft. Bei false werden die Abhängigkeiten von der mit -componentsurl angegebenen URL heruntergeladen.

Betriebssystemunterstützung

Windows Server 2008 Server Core oder Windows Server 2008 R2 Server Core bieten eine wartungsarme Serverumgebung mit beschränktem Funktionsumfang und unterstützen daher den Visual Studio-Bootstrapper nicht. Die Server Core-Installationsoption unterstützt beispielsweise nur das Profil .NET Framework 3.5 Server Core. Visual Studio-Funktionen, die auf das vollständige .NET Framework angewiesen sind, können damit nicht ausgeführt werden.