![]() |
HtmlHelpViewer "HH_Help_Context called without a [MAP] section"
Hallo,
ich habe folgendes Problem: Ich habe eine ganz normale Hilfe erstellt (mit 6 Buttons) und die Units HTMLHelpViewer und HelpFile eingebunden. Dann habe ich per "MS HTML Help Workshop" eine .chm erstellt. Wenn ich jetzt das Programm laufen lasse:
Delphi-Quellcode:
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, HTMLHelpViewer, HelpFile, pngimage, ExtCtrls; type TForm1 = class(TForm) Label1: TLabel; Inhaltsverzeichnis: TButton; Stichwoerter: TButton; Thema_suchen: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Label2: TLabel; Label3: TLabel; Image1: TImage; procedure FormCreate(Sender: TObject); procedure InhaltsverzeichnisClick(Sender: TObject); procedure StichwoerterClick(Sender: TObject); procedure Thema_suchenClick(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure buSetWinPosClick(Sender:TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin Application.HelpFile := ExtractFilePath(Application.ExeName) + 'HelpFile\HelpFile.chm'; Label1.Caption:= Application.HelpFile; end; procedure TForm1.InhaltsverzeichnisClick(Sender: TObject); begin HtmlHelp(0, Application.HelpFile, HH_DISPLAY_TOC, 0); end; procedure TForm1.StichwoerterClick(Sender: TObject); begin HtmlHelp(0, Application.HelpFile, HH_DISPLAY_INDEX, DWORD(PWideChar('Test'))); end; procedure TForm1.Thema_suchenClick(Sender: TObject); var Query: THH_Fts_QueryW; begin with Query do begin cbStruct:= SizeOf(THH_Fts_QueryW); fUniCodeStrings:= True; pszSearchQuery:= ''; iProximity:= 0; fStemmedSearch:= True; fTitleOnly:= False; fExecute:= True; pszWindow:= nil; end; HtmlHelp(0, Application.HelpFile, HH_DISPLAY_SEARCH, DWORD(@Query)); end; procedure TForm1.Button4Click(Sender: TObject); begin Application.HelpContext(IDH_TOPIC30); end; procedure TForm1.Button5Click(Sender: TObject); begin Application.HelpContext(IDH_TOPIC40); end; procedure TForm1.Button6Click(Sender: TObject); begin Application.HelpKeyword('Test'); end; end. und ich eine spezielle Hilfeseite aufrufe (z.B. über den Button 4 die # 30), kommt die Meldung "HH_Help_Context called without a [MAP] section". Wenn ich es aber richtig sehr, dann enthält mein "HelpFile.pas" doch wohl die MAP, oder (?):
Delphi-Quellcode:
unit HelpFile;
interface const IDH_TOPIC10 = 10; IDH_TOPIC20 = 20; IDH_TOPIC30 = 30; IDH_TOPIC40 = 40; IDH_TOPIC50 = 50; implementation end. Im "MS HTML Help Workshop" habe ich der Nr. 30 eine .htm-Seite zugewiesen. Ich habe also im "MS HTML Help Workshop" keine alias-Datei included, sondern unter alias per "add" folgendes eingegeben: "30=Seite_1.htm". Eine MAP habe ich auch nicht eingebunden; die ist ja wohl(???) die HelpFile.pas. Oder muss ich die alias-Daten (Zuweisung der Nummer zu einer bestimmten Hilfe) in die HelpFile.pas einpflegen oder eine gesonderte Datei? Freundlichsten Dank! |
AW: HtmlHelpViewer "HH_Help_Context called without a [MAP] section"
Ergänzung:
Wenn ich im MS HTML Help Workshop eine MAP-Datei (Dateiendung: ".h") einbinde, geht es. Aber eben über diese MAP-Datei. Jetzt frage ich mich natürlich, wozu ich dann die HelpFile-Unit brauche? Oder habe ich die HelpFile-Unit nicht richtig eingebunden? Gruß. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz