Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort zur 6. Auflage
1 Allgemeine Einführung in .NET
2 Grundlagen der Sprache C#
3 Das Klassendesign
4 Vererbung, Polymorphie und Interfaces
5 Delegates und Ereignisse
6 Strukturen und Enumerationen
7 Fehlerbehandlung und Debugging
8 Auflistungsklassen (Collections)
9 Generics – Generische Datentypen
10 Weitere C#-Sprachfeatures
11 LINQ
12 Arbeiten mit Dateien und Streams
13 Binäre Serialisierung
14 XML
15 Multithreading und die Task Parallel Library (TPL)
16 Einige wichtige .NET-Klassen
17 Projektmanagement und Visual Studio 2012
18 Einführung in die WPF und XAML
19 WPF-Layout-Container
20 Fenster in der WPF
21 WPF-Steuerelemente
22 Elementbindungen
23 Konzepte von WPF
24 Datenbindung
25 Weitere Möglichkeiten der Datenbindung
26 Dependency Properties
27 Ereignisse in der WPF
28 WPF-Commands
29 Benutzerdefinierte Controls
30 2D-Grafik
31 ADO.NET – Verbindungsorientierte Objekte
32 ADO.NET – Das Command-Objekt
33 ADO.NET – Der SqlDataAdapter
34 ADO.NET – Daten im lokalen Speicher
35 ADO.NET – Aktualisieren der Datenbank
36 Stark typisierte DataSets
37 Einführung in das ADO.NET Entity Framework
38 Datenabfragen des Entity Data Models (EDM)
39 Entitätsaktualisierung und Zustandsverwaltung
40 Konflikte behandeln
41 Plain Old CLR Objects (POCOs)
Stichwort

Download:
- Beispiele, ca. 62,4 MB

Jetzt Buch bestellen
Ihre Meinung?

Spacer
Visual C# 2012 von Andreas Kühnel
Das umfassende Handbuch
Buch: Visual C# 2012

Visual C# 2012
Rheinwerk Computing
1402 S., 6., aktualisierte und erweiterte Auflage 2013, geb., mit DVD
49,90 Euro, ISBN 978-3-8362-1997-6
Pfeil 17 Projektmanagement und Visual Studio 2012
Pfeil 17.1 Der Projekttyp »Klassenbibliothek«
Pfeil 17.1.1 Mehrere Projekte in einer Projektmappe verwalten
Pfeil 17.1.2 Die Zugriffsmodifizierer »public« und »internal«
Pfeil 17.1.3 Friend Assemblys
Pfeil 17.1.4 Einbinden einer Klassenbibliothek
Pfeil 17.2 Assemblys
Pfeil 17.2.1 Ein Überblick über das Konzept der Assemblys
Pfeil 17.2.2 Allgemeine Beschreibung privater und globaler Assemblys
Pfeil 17.2.3 Die Struktur einer Assembly
Pfeil 17.2.4 Globale Assemblys
Pfeil 17.3 Konfigurationsdateien
Pfeil 17.3.1 Die verschiedenen Konfigurationsdateien
Pfeil 17.3.2 Die Struktur einer Anwendungskonfigurationsdatei
Pfeil 17.3.3 Eine Anwendungskonfigurationsdatei mit Visual Studio 2012 bereitstellen
Pfeil 17.3.4 Einträge der Anwendungskonfigurationsdatei auswerten
Pfeil 17.3.5 Editierbare, anwendungsbezogene Einträge mit <appSettings>
Pfeil 17.4 Versionsumleitung in einer Konfigurationsdatei
Pfeil 17.4.1 Die Herausgeberrichtliniendatei
Pfeil 17.5 XML-Dokumentation
Pfeil 17.5.1 Das Prinzip der XML-Dokumentation
Pfeil 17.5.2 Die XML-Kommentartags
Pfeil 17.5.3 Generieren der XML-Dokumentationsdatei
Pfeil 17.6 Der Klassendesigner (Class Designer)
Pfeil 17.6.1 Ein typisches Klassendiagramm
Pfeil 17.6.2 Hinzufügen und Ansicht von Klassendiagrammen
Pfeil 17.6.3 Die Toolbox des Klassendesigners
Pfeil 17.6.4 Das Fenster »Klassendetails«
Pfeil 17.6.5 Klassendiagramme als Bilder exportieren
Pfeil 17.7 Refactoring
Pfeil 17.7.1 Methode extrahieren
Pfeil 17.7.2 Bezeichner umbenennen
Pfeil 17.7.3 Felder einkapseln
Pfeil 17.8 Code-Snippets (Codeausschnitte)
Pfeil 17.8.1 Codeausschnitte einfügen
Pfeil 17.8.2 Die Anatomie eines Codeausschnitts
Pfeil 17.9 »ClickOnce«-Verteilung
Pfeil 17.9.1 Allgemeine Beschreibung
Pfeil 17.9.2 Erstellen einer ClickOnce-Anwendung
Pfeil 17.9.3 Die Installation einer ClickOnce-Anwendung

Rheinwerk Computing - Zum Seitenanfang

17.9 »ClickOnce«-VerteilungZur nächsten Überschrift


Rheinwerk Computing - Zum Seitenanfang

17.9.1 Allgemeine BeschreibungZur nächsten ÜberschriftZur vorigen Überschrift

Eine gravierende Änderung wurde in Visual Studio 2012 gegenüber den Vorgängerversionen vollzogen: Während die alten Versionen immer den MS-Installer als Installationsprogramm integriert hatten, hat man seitens Microsoft davon nun Abstand genommen. Dieses Tool suchen Sie vergeblich, es wird auch nach Aussage von Microsoft nicht mehr weiterentwickelt. Viele werden diese Entscheidung begrüßen, denn der MS-Installer mutete doch ziemlich altbacken an und lief in seiner Bedienung und seinem Komfort der Zeit weit hinterher. Stattdessen hat man »InstallShield Limited Edition for Visual Studio« aufgenommen, das allerdings erst noch nachinstalliert werden muss.

Eine andere, hausinterne Verteilungsvariante ist aber weiterhin Bestandteil von Visual Studio: die ClickOnce-Verteilung. Was steckt hinter ClickOnce? Während eine herkömmliche Windows-Anwendung auf dem lokalen Rechner installiert wird, wird eine mit ClickOnce veröffentlichte Anwendung auf einem Server zur Verfügung gestellt. Dabei kann es sich um einen Webserver oder um eine Netzwerkdateifreigabe handeln. Zudem ist die Veröffentlichung auf einem CD-ROM-Datenträger möglich.

Wird eine Anwendung mit ClickOnce auf einem Webserver veröffentlicht, wird dem Benutzer innerhalb einer Webseite nur ein Link auf die Programmdatei zur Verfügung gestellt. Öffnet der Anwender den Link, werden die Programmdateien auf die lokale Maschine heruntergeladen und dort ausgeführt. Dabei werden die heruntergeladenen Dateien nicht etwa in einem Unterordner von Programme abgelegt, sondern in einem verschlüsselten Pfad im Benutzerprofil des aktuell angemeldeten Anwenders (Dokumente und Einstellungen\<Benutzer>\Lokale Einstellungen\Apps). Aus Sicherheitsgründen nimmt eine mit ClickOnce verteilte Anwendung weder Einträge in der Registrierungsdatenbank noch unter Desktop vor.

Ein besonderes Merkmal ist auch die Art und Weise der Aktualisierung. Bei der Bereitstellung mit der Installationsroutine muss der Benutzer bei jeder Aktualisierung die gesamte Anwendung neu installieren. Bei der ClickOnce-Bereitstellung werden Aktualisierungen der Anwendung automatisch zur Verfügung gestellt. Der Client ist dabei selbst in der Lage, festzustellen, ob eine neue Version vorliegt. Bei der Aktualisierung 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.

ClickOnce bietet die Möglichkeit, Anwendungen so einzurichten, dass der Benutzer sowohl online als auch offline mit der Anwendung arbeiten kann. Im Offline-Modus wird ein Programmpunkt im Startmenü angelegt, der die Anwendung startet. Diesen Eintrag gibt es nicht, wenn der Benutzer nur online mit der Anwendung arbeiten kann. Er kann die Anwendung nur starten, wenn er auf den erwähnten Link klickt.

Der Kern der neuen Architektur beruht auf zwei XML-Manifestdateien:

  • dem Anwendungsmanifest
  • dem Bereitstellungsmanifest

Das Anwendungsmanifest beschreibt die Anwendung einschließlich der Assemblys und der Dateien, aus denen die Anwendung besteht, sowie des Speicherorts, an dem Updates verfügbar sein werden. Das Bereitstellungsmanifest beschreibt, wie die Anwendung bereitgestellt wird, einschließlich des Speicherorts des Anwendungsmanifests sowie der Version der Anwendung, die auf den Clients ausgeführt wird. Beide Manifeste werden automatisch von Visual Studio 2012 erzeugt.

Das Ziel von ClickOnce ist, die Verteilung von Anwendungen zentral zu verwalten und zu vereinfachen. Aber es gibt auch Einschränkungen, die schon in der Planungsphase zu berücksichtigen sind. Während der Einrichtung einer ClickOnce-Anwendung sind keine Operationen erlaubt, die administrative Rechte voraussetzen. Dazu gehören der Zugriff auf das Dateisystem und der Zugriff auf die Registrierungsdatenbank. Genauso wenig können Assemblys in den Global Assembly Cache (GAC) eingetragen oder als Windows-Dienste eingerichtet werden.


Rheinwerk Computing - Zum Seitenanfang

17.9.2 Erstellen einer ClickOnce-AnwendungZur nächsten ÜberschriftZur vorigen Überschrift

So viel zur Theorie. Nun wollen wir uns das Ganze natürlich auch in der praktischen Entwicklung ansehen. Legen Sie ein neues Projekt an. Um ClickOnce zu verstehen, müssen Sie überhaupt keinen Code schreiben.

Alle Optionen, die ClickOnce anbietet, können Sie innerhalb eines Dialogs festlegen. Öffnen Sie dazu das Eigenschaftsfenster des Projekts, und aktivieren Sie die Lasche Veröffentlichen. In Abbildung 17.20 sehen Sie die Registerkarte. Alle Einstellungen, die Sie hier vornehmen, werden gespeichert und stehen beim Veröffentlichen auf dem Server zur Verfügung.

Entscheidend ist zunächst einmal der Ort, an dem die ClickOnce-Komponente abgelegt wird. Über die Schaltfläche rechts neben dem Eingabefeld gelangen Sie zu einem Dialog (siehe Abbildung 17.21), der Ihnen alle Möglichkeiten offenlässt.

Abbildung

Abbildung 17.20 Die »ClickOnce«-Optionen einer Anwendung

Abbildung

Abbildung 17.21 Dialog zum Einstellen des Orts der Veröffentlichung

Sie können einen der folgenden Orte angeben, an den die Anwendung kopiert werden soll:

  • einen Dateipfad
  • auf den lokalen Webserver (IIS)
  • auf einen FTP-Server
  • auf eine entfernte Website, die mit den FrontPage-Servererweiterungen konfiguriert ist

Als Installationsmodus können Sie online oder offline wählen (siehe Abbildung 17.20). Fällt die Wahl auf den Offline-Modus, werden für die Anwendung ein Startmenüeintrag und ein Eintrag in den Systemeinstellungen unter Software hinzugefügt. Hierüber kann der Anwender später unter Umständen die Anwendung auch wieder deinstallieren. Beachten Sie, dass Sie im Offline-Modus über die dann aktivierte Schaltfläche Updates... auch das Aktualisieren beeinflussen können. Den Dialog sehen Sie in Abbildung 17.22. Vorgegeben ist, dass die Anwendung nach Updates suchen soll. Wenn Sie sicher sind, dass Ihre Software so gut ist, dass kein Update zu erwarten ist, können Sie diese Option auch deaktivieren. Andernfalls können Sie die Häufigkeit der Update-Prüfung konfigurieren.

Abbildung

Abbildung 17.22 Konfiguration der Update-Suche

Ein Klick auf die Schaltfläche Anwendungsdateien... in der Registerkarte Veröffentlichen öffnet den Dialog, den Sie in Abbildung 17.23 sehen. Hier können Sie angeben, welche Dateien auf den Server kopiert werden sollen. Im vorliegenden Fall handelt es sich nur um die Programmdatei. Wäre eine benutzerdefinierte Klassenbibliothek unter Verweise eingebunden, würde die DLL automatisch mit in den Verteilungsprozess einbezogen.

Abbildung

Abbildung 17.23 Die zur Installation notwendigen Dateien

Im Dialog Erforderliche Komponenten... wählen Sie die Komponenten aus, die ebenfalls auf den Server kopiert werden sollen (siehe Abbildung 17.24). Zuletzt können Sie noch unter Optionen... diverse Einstellungen vornehmen, die mehr allgemeiner Natur sind.

Abbildung

Abbildung 17.24 Bereitstellung zusätzlicher Komponenten

Nachdem Sie die Konfiguration fertiggestellt haben, steht der Veröffentlichung nichts mehr im Wege. Ich gehe im Weiteren davon aus, dass die Anwendung auf den lokalen Webserver kopiert wird und die Offline-Ausführung der ClickOnce-Anwendung ausgewählt worden ist. Auf dem Webserver wird ein virtuelles Verzeichnis angelegt, das standardmäßig namentlich identisch mit dem Projektbezeichner ist. Das Verzeichnis enthält neben dem Bereitstellungsmanifest (das ist die Datei mit der Erweiterung .application) auch eine setup.exe-Datei, die die Installation startet, sowie die Datei publish.htm, die der Anwender aufruft, um die Anwendung zu installieren. Zudem wird der Root der Anwendung ein Unterverzeichnis hinzugefügt, dessen Name sich aus dem Bezeichner der Anwendung, ergänzt um die vierstellige Versionsnummer, ergibt. Die Punkte der Versionsnummer sind dabei gegen Unterstriche ausgetauscht worden. Dieses Verzeichnis enthält die tatsächlichen Anwendungsdaten und das Anwendungsmanifest mit der Erweiterung .manifest.


Rheinwerk Computing - Zum Seitenanfang

17.9.3 Die Installation einer ClickOnce-AnwendungZur vorigen Überschrift

Nun wollen wir auch noch die Anwendung installieren. Dazu öffnen wir im Internet Explorer die Datei publish.htm. Die Webseite enthält eine Schaltfläche, über die die Anwendung im lokalen Cache eingerichtet wird. Zuvor müssen Sie jedoch die Installation der Anwendung bestätigen, da der Herausgeber als nicht vertrauenswürdig eingestuft wird – obwohl Sie in diesem Fall selbst der Herausgeber sind. Anschließend wird das Programm gestartet.

Abbildung

Abbildung 17.25 Die Ansicht der Seite »publish.htm«

Da die Anwendung für den Offline-Modus eingerichtet worden ist, können Sie diese nachfolgend über das Startmenü starten. Dazu ist keine Verbindung zum Webserver notwendig. Sie können das selbst testen, indem Sie im Internetdienste-Manager den Webserver anhalten. Es wird zwar versucht, Kontakt zum Webserver aufzunehmen, aber das Starten der Laufzeitumgebung ist nicht davon abhängig. Hätten Sie sich für den Online-Modus bei der Kompilierung der Anwendung entschieden, wäre ein Aufruf von publish.htm notwendig gewesen. Diese steht aber nur dann zur Verfügung, wenn der Webserver seine Dienste ausführt.

Wie verhält sich nun die Anwendung, wenn sie in irgendeiner Weise verändert und erneut veröffentlicht wird? Sie können das sehr einfach testen, indem Sie der Form eine Schaltfläche hinzufügen oder einfach nur die Hintergrundfarbe ändern. Veröffentlichen Sie die Anwendung erneut, wird automatisch die Versionsnummer erhöht – falls Sie auf der Registerkarte Veröffentlichen des Projekteigenschaftsfensters keine andere Vorgabe getroffen haben. Die erste Versionsnummer lautete 1.0.0.0, die neue 1.0.0.1. Auf dem Webserver wird ein zweites Unterverzeichnis für die neue Version angelegt, und im Bereitstellungsmanifest wird die Umleitung darauf eingetragen.

Wenn Sie die Anwendung über das Startmenü aufrufen, sucht der Client nach eventuellen Updates. Ist der Webserver in Betrieb, wird die neue Version erkannt, geladen und ausgeführt. Der Anwender braucht in diesem Fall in keiner Weise einzugreifen oder selbst für die Neuinstallation der Anwendung zu sorgen. Der ClickOnce-Prozess übernimmt das vollkommen automatisch.



Ihre Meinung

Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.

<< zurück
  Zum Rheinwerk-Shop
Zum Rheinwerk-Shop: Visual C# 2012

Visual C# 2012
Jetzt Buch bestellen


 Ihre Meinung?
Wie hat Ihnen das Openbook gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Rheinwerk-Shop: Professionell entwickeln mit Visual C# 2012






 Professionell
 entwickeln mit
 Visual C# 2012


Zum Rheinwerk-Shop: Windows Presentation Foundation






 Windows Presentation
 Foundation


Zum Rheinwerk-Shop: Schrödinger programmiert C++






 Schrödinger
 programmiert C++


Zum Rheinwerk-Shop: C++ Handbuch






 C++ Handbuch


Zum Rheinwerk-Shop: C/C++






 C/C++


 Lieferung
Versandkostenfrei bestellen in Deutschland, Österreich und der Schweiz
InfoInfo





Copyright © Rheinwerk Verlag GmbH 2013
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das Openbook denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt.
Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


Nutzungsbestimmungen | Datenschutz | Impressum

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de

Cookie-Einstellungen ändern