我可以通过传递 ShortInteger 并将其转换为 dwData 参数的 Word 来打开 CHM 文件。IE
Unit Help; //this is where the Id's are set with their description
Interface
Const
Address_File = 35; //delphi identifies Address_File as a shortint
etc..
呼叫获取帮助传递我的 ID
GetHelp(Address_File); //call get help pass my ID to open to the Address_File topic
获取帮助程序
procedure GetHelp(HelpID : Word);
begin
Application.HelpFile := ProgramPath + 'help.chm';
HtmlHelpW(0, PWideChar(Application.HelpFile),HH_HELP_CONTEXT , HelpID);
end;
HtmlHelpW 函数
function HtmlHelpW(hwndCaller : HWND; pszFile: PWideChar; uCommand : Integer;
dwData : DWORD) : HWND; stdcall; external 'hhctrl.ocx' name 'HtmlHelpW';
当我传递不同的 ShortIntegers 时,我可以在不同的部分初始化帮助文件。但是我无法弄清楚这些值是如何映射的。我希望能够映射到 chm 文件中的某些部分,但与它们关联的短整数或上下文 ID 未记录在程序中或未映射。