Endlich - Ihr Programm ist fertiggestellt und ausgetestet, und könnte nun angeboten/ausgeliefert werden. Was jetzt aber noch fehlt ist die Online-Hilfe, die dem Benutzer die einzelnen Programmfunktionen erklären soll. Wünschenswert wäre natürlich eine Hilfe im modernen Look & Feel von Windows - HTML-Help heißt das Zauberwort. Mit diesem Workshop möchten wir Ihnen das Erstellen eines HTML-Hilfesystems erklären und zeigen weiterhin, wie sich die neue Hilfe aus der Anwendung heraus aufrufen lässt. Was ist HTML-Help? HTML-Help ist das derzeit aktuelle und gängige Hilfesystem, welches Microsoft selbst seit Einführung von Windows 98 und dem Internet Explorer 3.x für die Anzeige der Windows Online-Hilfe einsetzt. HTML steht hierbei für Hyper Text Markup Language. Microsoft HTML-Help besteht u.a. aus einem Online-Viewer, der die Komponenten des Internet Explorers verwendet, um die Hilfeseiten anzuzeigen. Aus diesem Grund lässt sich ein HTML-Help Hilfesystem nur zusammen mit installiertem Internet Explorer 3.01 oder höher verwenden. Folgende Formate und Komponenten werden von HTML-Help unterstützt:
Wie ist eine HTML-Hilfe aufgebaut? Die einzelnen Kapitel lassen sich z.B. durch ein Ordnersymbol darstellen und "klappen" auf, wenn man auf diese klickt. Ein Kapitel kann natürlich weitere Unterkapitel (weitere Ordner) erhalten usw. Der Inhalt eines Kapitel/Themas muss nicht nur aus reinem Text bestehen - nein im Gegenteil - Bilder und Symbole, evtl. noch ein farbiger Hintergrund peppen das Ganze optisch auf, ebenfalls das Verwenden von verschiedenen Schriftattributen. Hier sind Ihrer Fantasie fast keine Grenzen gesetzt. Da es sich um ein HTML-Hilfesystem handelt, sollten Sie sich jedoch mit den Grundlagen der HTML-Sprache (Tags) vertraut machen. An dieser Stelle soll natürlich das Standardwerk-Nachschlagewerk zu HTML nicht unerwähnt bleiben. Unter http://selfaktuell.teamone.de/ finden Sie das umfassende und fundierte Tutorial/Nachschlagewerk SELFHTML von Stefan Münz. Wenn Sie also noch keinerlei Erfahrung mit der Erstellung von HTML-Dateien gemacht haben, sollten Sie unbedingt bei SELFHTML vorbeischauen. Aber auch für alle anderen wird sich SELFHTML lohnen. Erstellen der Hilfeseiten Nun geht's ans Eingemachte. Die Hilfeseiten müssen erstellt werden. Hierzu können Sie Frontpage verwenden oder auch einen ganz normalen Editor, wie z.B. Notepad. Sie können natürlich auch einen speziellen HTML-Editor einsetzen, wie z.B. Allaire HomeSite, der übrigens mein persönlicher Favorit ist (Infos und Download unter www.allaire.com). Speicherort der Hilfeseiten Je nach Umfang des Hilfesystems kann man dann noch weitere Unterordner erstellen, um so die Übersichtlichkeit zu wahren. In obiger Abbildung z.B. werden alle Hilfeseiten zum Thema "Allgemein" in den Unterordner _allgemein gespeichert, Hilfeseiten zum Thema "SMTP" in den Unterordner _smpt usw. Willkommen-Seite Fangen wir einfach einmal mit der Willkommen-Seite an - eine Art Begrüßungsseite zur Online-Hilfe. Starten Sie hierzu den Windows-Editor (Notepad) und geben folgende Zeilen ein: <html> <head> <title>Allgemein: Willkommen</title> </head> <body> <p><h1>Mails senden, abrufen und decodieren - ganz easy </h1></p> <p><h2>sevMail ActiveX Entwicklerkomponente</h2></p> <p><b>32-Bit OCX-Komponente</b><br> für den Einsatz in Visual Basic 6</p> <p><b>EMail-Nachrichten versenden und abrufen</b><br> Mit der sevMail ActiveX-Komponente ist es ein Leichtes, EMail-Nachrichten via Simple-Mail-Transfer-Protocol (SMTP) zu versenden oder neue Nachrichten von einem POP3-Server abzurufen (POP3 steht für Post-Office-Protocol). Die Komponente benutzt hierzu das Winsock-Control, d.h. es braucht kein MAPI-fähiger Mailclient auf dem System installiert zu sein.</p> <p><b>Empfangene EMail-Nachrichten decodieren</b><br> Die sevMail Komponente verfügt weiterhin über eine leistungsfähige Mail-Parser-Klasse, mit der Sie eine EMail im Handumdrehen decodieren und in ihre Einzelteile zerlegen (Header, Message, Attachments). Die einzelnen Informationen der Mail-Nachricht werden über entsprechende Auflistungs-Objekte bereit gestellt - das Decodieren und Speichern einer Mail-Anlage z.B. erfolgt über einen einzigen Methoden-Aufruf.</p> <p><b>Automatisches Zippen von Mail-Anlagen</b><br> Beim Versenden von Mails mit Datei-Anlagen können Sie festlegen, ob Anlagen ab einer bestimmten Größe <b>automatisch komprimiert</b> werden sollen, so dass die Mail selbst um ein Vielfaches kleiner wird. Dies schont nicht nur den Mail-Traffic, sondern auch die Verbindungskosten, da sowohl der Versand als auch der Abruf beim Empfänger schneller erfolgt. Bei dem verwendeten Komprimierverfahren handelt es sich um das bekannte ZIP-Format, welches mit WinZip kompatibel ist.</p> <p><b>Integrierte Konvertierfunktionen</b><br> Die sevMail Komponente verfügt über leistungsstarke Konvertierfunktionen, um Nachrichtentexte vom Plain-Format ins HTML-Format zu konvertieren - und umgekehrt. Unterstützt wird auch die Konvertierung von RTF-Text in HTML-Text!</p> <p><img src="images/pfeil_rot.gif" width=11 height=11 align=absmiddle> <a href="_allgemein/features.htm">Features</a></p> </body> </html> Verwendete HTML-Tags
Speichern der Willkommen-Seite Achtung Wenn Sie möchten können Sie sich die Willkommensseite nun schon mal anschauen. Öffnen Sie den Windows Explorer und wechseln Sie in den Ordner "projekt\HTMLHelp". Doppelklicken Sie nun auf die Datei "willkommen.htm". Diese sollte nun im Standard-Browser angezeigt werden - und zwar in etwa so:
Weitere Hilfeseiten erstellen
Erstellen Sie einen weiteren Unterordner _allgemein und speichern Sie diese Dateien in dem neu erstellten Ordner ab. Sie sehen schon, jeder Eintrag aus dem Hilfe-Inhaltsverzeichnis entspricht einer einzelnen HTML-Datei und alle Themen eines Kapitels speichern wir in ein separates Unterverzeichnis. Übersicht ist halt Trumpf Wenn wir schon dabei sind... Erstellen wir doch auch gleich noch die Hilfeseite für das nächste Kapitel, welches sich dem SMTP-Versand widmen soll.
Die weiteren Hilfeseiten erstellen Sie dann später. Zunächst wollen wir die bisher erstellten Seiten zu einem echten HTMLHelp-Hilfesystem "zusammenbauen". Das Hilfesystem lässt sich anschließend jederzeit um weitere Kapitel und Themen erweitern. Arbeit mit dem Microsoft HTML Help Workshop Nachdem wir die ersten Hilfeseiten erstellt und gespeichert haben, brauchen wir nun ein "Werkzeug", um aus den Einzeldateien das HTMLHelp-Hilfesystem (.CHM-Datei) zu erstellen. Hierzu verwenden wir den Microsoft® HTML Help Workshop - ein Tool (Programm), mit sich schnell und einfach ein Inhaltsverzeichnis erstellen lässt und das auf Knopfdruck dann alle Seiten in eine CHM-Datei kompiliert. Das Tool HTML Help Workshop finden Sie auf der VB-Installations-CD im Verzeichnis \htmlhelp. Sie können sich das Tool und somit die aktuelle Version aber auch direkt von der Microsoft Homepage downloaden und installieren: Aufruf: HTML Help Workshop
Auswahl der bisher erstellten HTML-Dateien Klicken Sie hier auf Weiter und dann im nächsten Schritt auf Browse. Suchen Sie nach unserem HTMLHelp-Ordner und geben in das Eingabefeld im Suchen-Dialog den Namen der HHP-Projektdatei ein (z.B. MyHTMLHelp). Klicken Sie auf Weiter. Im nächsten Schritt markieren Sie die letzte der drei Einstellung: HTML-Files (.htm) (wir haben ja bereits ein paar HTML-Seiten erstellt). Klicken Sie wiederum auf Weiter. Über die Schaltfläche Add wählen Sie nun der Reihe nach die bereits erstellten HTML-Seiten aus, also "willkommen.htm", "_allgemein\features.htm" usw. Klicken Sie auf Weiter und anschließend auf Fertigstellen. Projekt-Eigenschaften Erstellen des Inhaltsverzeichnisses Neuen Ordner (Kapitel) erstellen Hilfethemen einfügen Genau nach diesem Schema geht es jetzt erst mal weiter:
Weitere Ordner (Kapitel) und Themen erstellen Das Ganze sieht nun folgendermaßen aus - und hierbei belassen wir es auch zunächst. Erster Test des neuen HTMLHelp-Hilfesystems Während des Kompilier-Vorgangs wird automatisch ein Log-Fenster eingeblendet, welches uns über den Status sowie evtl. aufgetretene Fehler informiert. Wechseln Sie nun in den Windows Explorer und doppelklicken Sie auf die frisch erstellte HTMLHelp-Datei MyHTMLHelp.chm Sieht doch schon ganz gut aus Was jetzt noch fehlt ist ein Stichwort-Verzeichnis... Erstellen eines Stichwort-Verzeichnisses Die Liste ist zunächst leer. Die Vorgehensweise ist nahezu identisch mit der Erstellung des Inhaltsverzeichnisses. Stichwort einfügen Genau nach diesem Schema geht es jetzt erst mal weiter:
Das Ganze sieht dann wie folgt aus: Speichern, Kompilieren und Testen Hilfesystem um neue Kapitel und Themen erweitern Danach wird der "HTML Help Workshop" reaktiviert und das HHP-Projekt um die neue Hilfeseite ergänzt. Klicken Sie hierzu im Register Projekt auf das -Symbol und öffnen die eben erstellte neue Hilfeseite (Datei). Jetzt muss natürlich auch das Inhaltsverzeichnis und Stichwortverzeichnis um den neuen Eintrag ergänzt werden. Die notwendigen Schritte dürften Ihnen ja nun bekannt sein. Auf diese Weise lässt sich ein HTMLHelp-Projekt nach und nach um neue (noch fehlende) Hilfeseiten erweitern, bis letztendlich das komplette Hilfesystem fertiggestellt ist. HTML-Hilfe in VB-Programme einbinden
Zunächst sollten Sie aber erst einmal die frisch erstellte HTMLHelp-Datei in das Projektverzeichnis der Anwendung kopieren, so daß diese auch gefunden wird, da der nachfolgende Code hierzu die App.Path-Eigenschaft verwendet. HTMLHelp-API Deklarationen ' HTML-Help Private Declare Function HtmlHelp Lib "hhctrl.ocx" _ Alias "HtmlHelpA" ( _ ByVal hwndCaller As Long, _ ByVal pszFile As String, _ ByVal uCommand As Long, _ ByVal dwData As Long) As Long Private Declare Function HtmlHelpTopic Lib "hhctrl.ocx" _ Alias "HtmlHelpA" ( _ ByVal hWnd As Long, _ ByVal lpHelpFile As String, _ ByVal wCommand As Long, _ ByVal dwData As String) As Long Private Const HH_DISPLAY_TOPIC = &H0 Gezieltes Aufrufen bestimmter Topics ' Bestimmte Seite einer HTML-Hilfe aufrufen ' wird sTopicFile nicht angegeben, wird autom. die ' Startseite der HTMLHelp-Hilfe angezeigt ' Public Sub HTMLHelp_ShowTopic( _ Optional ByVal sTopicFile As String) Dim sHelpFile As String ' Pfad zur HTML-Hilfe sHelpFile = App.Path & "\MyHTMLHelp.chm" If sTopicFile = "" Then ' Startseite anzeigen HtmlHelp 0, sHelpFile, HH_DISPLAY_TOPIC, ByVal 0& Else ' belibiege Seite anzeigen HtmlHelpTopic 0, sHelpFile, HH_DISPLAY_TOPIC, _ sTopicFile End If End Sub Startseite aufrufen Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ' F1 - Hilfe If KeyCode = vbKeyF1 Then KeyCode = 0 HTMLHelp_ShowTopic End If End Sub Selbstverständlich lässt sich die Startseite auch über ein Menü oder durch Klicken auf eine Schaltfläche aufrufen: ' Aufruf der Hilfe-Startseite aus dem Menü heraus Private Sub mnuHelp_Click() HTMLHelp_ShowTopic End Sub ' Aufruf der Hilfe-Startseite über eine Schaltfläche Private Sub cmdHelp_Click() HTMLHelp_ShowTopic End Sub Beliebiges Topic der HTML-Hilfe aufrufen Auch hier muss zunächst die Form-Eigenschaft Preview = True festgelegt werden: Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) ' F1 - Hilfe (Features) If KeyCode = vbKeyF1 Then KeyCode = 0 HTMLHelp_ShowTopic "_allgemein/features.htm" End If End Sub Et voilá... Ich hoffe, wir konnten Ihnen mit unserem HTMLHelp-Workshop alle wichtigen Grundlagen vermitteln, so dass Sie Ihre Programme ab sofort mit dem modernen HTMLHelp-Hilfesystem ausstatten können. Dieser Workshop wurde bereits 48.351 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Workshops finden Sie auch auf unserer aktuellen vb@rchiv Vol.6 Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
vb@rchiv CD Vol.6 Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! Online-Update-Funktion Entwickler-Vollversionen u.v.m. Tipp des Monats Oktober 2024 Heinz Prelle Firewall-Status unter WinXP/Vista prüfen Das Beispiel prüft, ob die Firewall unter Windows XP/Vista eingeschaltet ist oder nicht. Zudem wird eine Abfrage durchgeführt ob es sich bei dem zugrundeliegenden Betriebssystem um Windows XP/Vista handelt oder nicht. TOP! Unser Nr. 1 Neu! sevDataGrid 3.0 Mehrspaltige Listen, mit oder ohne DB-Anbindung. Autom. Sortierung, Editieren von Spalteninhalten oder das interaktive Hinzufügen von Datenzeilen sind ebenso möglich wie das Erstellen eines Web-Reports. |
||||||||||||||
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |