2015-07-07 2 views
6

Ich möchte meine Anwendung mit ClickOnce mit einigen Voraussetzungen (.NET 4.5 und SQL Server Express) veröffentlichen.ClickOnce kann seine Voraussetzungen nicht finden, während die Dateien an der Stelle sind, an der sie sein müssen

Ich tat, wie er sagt, in How to: Include Prerequisites with a ClickOnce Application (beachten Sie, dass die Paketordner auf v8.1A Ordner statt v8A Ordner waren), aber es immer noch sagt es die Dateien nicht finden können. Ich habe sowohl Visual Studio 2013 und Visual Studio 2015 RC versucht.

Um herunterladen Voraussetzungen aus dem gleichen Ort wie meine Anwendung "im Voraussetzungen Dialogfeld zu aktivieren, müssen Sie Datei‚DotNetFX45 \ dotNetFx45_Full_x86_x64.exe‘für Artikel‚Microsoft .NET Framework 4.5 (x86 und x64)‘herunterladen zu Ihrer lokalen Maschine. Weitere Informationen finden Sie unter http://go.microsoft.com/fwlink/?LinkId=239883.

Um "Voraussetzungen vom selben Ort wie meine Anwendung herunterladen" im Dialogfeld "Voraussetzungen" zu aktivieren, müssen Sie die Datei "SqlExpress2012 \ SQLEXPR32_x86_ENU.EXE" für den Eintrag "SQL Server 2012 Express" auf Ihren lokalen Rechner herunterladen. Weitere Informationen finden Sie unter http://go.microsoft.com/fwlink/?LinkId=239883.

Um herunterladen Voraussetzungen aus dem gleichen Ort wie meine Anwendung "im Dialogfenster Voraussetzungen zu ermöglichen, Sie Datei‚SqlExpress2012 \ SQLEXPR_x64_ENU.EXE‘für Punkt‚SQL Server 2012 Express‘auf dem lokalen Rechner herunterladen. Weitere Informationen finden Sie unter http://go.microsoft.com/fwlink/?LinkId=239883.

Um 'Voraussetzungen vom selben Ort als meine Anwendung herunterladen' im Dialogfeld 'Voraussetzungen' zu aktivieren, müssen Sie die Datei 'DotNetFX40ClientKB2468871 \ dotNetFx40_Client_x86_x64.exe' für den Artikel 'Microsoft .NET Framework 4 Client-Profil (x86 und x64) herunterladen Aktualisieren Sie für .NET Framework 4 (KB2468871) auf Ihrem lokalen Computer. Weitere Informationen finden Sie unter http://go.microsoft.com/fwlink/?LinkId=239883.

+0

Ich denke, Sie sollten zu Ihrer Einrichtung gehen und alle Vorbedingungen für Ihre Anwendung überprüfen. Fügen Sie die Pakete lokal hinzu, damit sie mit dem Paket heruntergeladen werden können, falls erforderlich, aber von Ihrer Installation. – Juan

+0

@Juan Ich habe nicht verstanden –

+0

Humm lassen Sie mich in meinem Computer einchecken, tut mir leid, mein Englisch ist nicht perfekt :) – Juan

Antwort

6

Sie haben eine sehr falsche Vorstellung über das, was in einer Clickonce-Bereitstellung möglich ist. Die kanonische MSDN-Seite lautet this one. High-Beleuchtung der wichtigsten Abschnitte in dieser Web-Seite:

Auswirkungen auf den Computer des Benutzers. Bei der Windows Installer-Bereitstellung sind Anwendungen häufig auf gemeinsam genutzte Komponenten angewiesen, was zu Versionskonflikten führen kann. Bei der ClickOnce-Bereitstellung ist jede Anwendung unabhängig und kann andere Anwendungen nicht beeinträchtigen.
Sicherheitsberechtigungen. Die Windows Installer-Bereitstellung erfordert administrative Berechtigungen und ermöglicht nur eine eingeschränkte Benutzerinstallation. Die ClickOnce-Bereitstellung ermöglicht Benutzern ohne Administratorrechte die Installation und gewährt nur die für die Anwendung erforderlichen Berechtigungen für die Codezugriffssicherheit.

keine gemeinsam genutzten Komponenten oder andere Anwendungen auswirken: Ja
Installation der freigegebenen Dateien: Keine
Installation Global Assembly Cache: Keine
Installation für mehrere Benutzer: Nein
installieren Zeitregistrierungszugang: Begrenzt

Diese absichtlichen Einschränkungen sollen Benutzern ein gutes Gefühl bei der Installation von .NET-Programmen mit ClickOnce geben. Sie benötigen keine Unterstützung von einem Administrator, um das Programm zu installieren. Und der Installateur kann keine drastischen Änderungen am Gerät vornehmen, die zu Fehlfunktionen anderer Programme führen. Ein sehr, sehr häufiges Problem mit Installateuren.

Dies ist grob unvereinbar mit dem, was Sie versuchen zu tun. Sowohl das .NET Framework als auch SQL Express sind gemeinsame Komponenten und tun erfordern Administratorzugriff zu installieren und tun Risiko destabilisieren eine Maschine, die bereits .NET oder SQL Server installiert hat.

Das kann einfach nicht funktionieren. Sie können wählen Sie sie als Voraussetzungen aus, aber alles was zur Installationszeit passiert ist, dass das ClickOnce-Installationsprogramm überprüft, ob sie erfüllt sind. Mit anderen Worten, auf der Maschine müssen bereits die korrekten Versionen von .NET und SQL Express installiert sein. Wenn dies nicht der Fall ist, schlägt die Bereitstellung fehl, und der Benutzer erhält das Dialogfeld, in dem er den Installationsort des Installationsprogramms angibt. Es liegt nun an ihm (oder seinem Administrator), das Installationsprogramm herunterzuladen und auszuführen. Nach dem Ihre ClickOnce-Installation ohne Probleme abgeschlossen ist.

Der Bereitstellungsassistent ist ziemlich mies, er sollte die Radioknöpfe am unteren Rand verborgen haben. Nur "von der Website des Komponentenherstellers" ist eine gültige Auswahl für diese Voraussetzungen. Das Bootstrapper-XML-Dateiformat ist nicht anspruchsvoll genug, um die Auswahl einzuschränken.

Wenn Sie dem Benutzer diese im Installationsprogramm enthaltenen Voraussetzungen bereitstellen möchten, müssen Sie nur ein normales MSI-Installationsprogramm erstellen.

+1

Visual Studio wird eine ClickOnce-Setup.exe erstellen, die die Voraussetzungen bei der Erstinstallation auf einem Zielcomputer ausführt. Dies ist eine separate Installation von der Bereitstellung ".application" und kann neben der Überprüfung der Voraussetzungen auch neue Software installieren. – JoshL

+0

Fügen Sie einfach Ihre eigene Antwort hinzu, um dem OP zu erklären, warum er kein wirkliches Problem hat. –

+1

Das OP hat ein echtes Problem. Ich reagiere auf die Implikation in dieser akzeptierten Antwort, dass ClickOnce bei der Installation keine Windows Installer-ähnlichen Voraussetzungen verarbeiten kann/sollte. Diese Voraussetzungen müssen möglicherweise erhöht werden, um ausgeführt werden zu können. Dies verhindert jedoch nicht, dass die ClickOnce-Infrastruktur für die Installation verwendet wird. Diese Funktion kann insbesondere für unternehmensinterne Bereitstellungen sehr nützlich sein. – JoshL

0

Die Art, wie ich dieses Szenario in der Vergangenheit gemacht habe, ist nur die eingebauten "Publish" -Funktionen zu verwenden. Sie scheinen in meiner Erfahrung gut zu funktionieren.

Im Abschnitt Konfiguration veröffentlichen Ihrer Anwendung gibt es eine Schaltfläche "Voraussetzungen", unter der Sie unter anderem .NET Framework und SQL Express anklicken und abfragen können. Während der ClickOnce-Installation wird der Benutzer aufgefordert, sie vor der Installation der Anwendung von Microsoft herunterzunehmen. Application Properties

Prerequisites Selection

+0

Sie laden die Voraussetzungen von der Website des Komponentenherstellers, während ich sie von dem gleichen Ort wie meine Anwendung herunterladen möchten da ich meinen Kunden nichts herunterladen möchte. –

Verwandte Themen