?_•ÿÿÿÿb …|[bag.ini] groupcount=1 group1=hlpacces [hlpacces] Indexfile=hlpacces.ind Title=Help Access Library declarations /&;)z4ÿÿ v ÿÿÿÿbag.ini|CONTEXTÛ}|CTXOMAP j|FONT¹g|KWBTREE}m|KWDATA«j|KWMAPlm|SYSTEMÄ|TOPICQ|TTLBTREE¬u|bm0 †„l"ÔZ8!Help Access Library declarations#Herd Software Development (C) 1996BrowseButtons()AddAccelerator(27,0,"Exit()"),RegisterRoutine("ftui","InitRoutines","SU")InitRoutines(qchPath,1)2RegisterRoutine("ftui","SwitchToTopicsFound","U")8AddAccelerator(0x56, 2, "SwitchToTopicsFound(hwndApp)")4RegisterRoutine("ftui","ExecFullTextSearch","USSS")MCreateButton("ftSearch","&Find","ExecFullTextSearch(hwndApp,qchPath,`',`')")EAddAccelerator(0x46, 2, "ExecFullTextSearch(hwndApp,qchPath,`',`')")ZƒmainmainO‚O:‚Oz0¯—ä ô ”Om##ÊO,÷l—ÀÀÀh`_`ÿÿÿÿ 9ÿÿÿÿE1žÿÿÿÿN‚E™EContentsT& ™. ,€N€ˆ°€ˆ"€‚ÿHelp Access Library 1.0.1 Contents¼˜EU$ €1€€‚ÿTo display a list of topics by category, click any of the contents entries below. To display an alphabetical list of topics, choose the Index button.'™|$ €€R€‚ÿCU¿* $€2€ˆÄ°€‚ÿCopyright Informationsn?|-/ ,€€°ãÂvG€‰€‚‚ÿLicenses and OrderingHelp Access Library is Copyrighted 1996 by Dipl. Ing. Bernd Herd, Rudolf-Virchow-Str. 8, 68642 Bürstadt. This is the trial Version for the Software. You have the right to test this product inside of your applications for a maximum of 30 days, but no right to distribute any Programs with it.)¿V% €€R€‚‚ÿ;-‘* $€"€ˆÄ°€‚ÿC/C++ Elements”NV%F \€œ€°ãÐà2߀‰‚ã+3‰‚ã?Þ²Á‰‚ãyg_É‚ãÙNn]‰‚ÿAPI-IntroductionFunctionsStructures and EnumsConstantsModules)‘N% €€R€‚‚ÿ2%€* $€€ˆÄ°€‚ÿOtherQ NÑ1 2€@€°ãt³g€‰‚ãÝ>ú‰‚ÿGlossaryLibrary binaries)€ú% €€R€‚‚ÿDÑ>* $€4€ˆÄ°€‚ÿSimple Example ProgramsY¾ú—› }€PUß~‚UÈEP(`notepad.exe tcnt.c',0)€‰€ƒãl ñ‘‰ããÿ!€‰€‚ÈEP(`notepad.exe tcpp.cpp',0)€‰€ƒã©pÛΉã7q§µ€‰€‚ÿTCNT.CCreates Windows 95 Contents Files (CNT) for a whole set of Help-Files (Windows 3.1 or Windows 95) automatically. Illustrates the use of HlpEnumTitles and HlpCreateStringForHashValue.TCPP.CPPShows how to use Help Access Library with C++ class oriented programming. This example displays all Topic-Entry and Hotspot macros used in a Help file. Illustrates the use of HlpTopicEnumerate and HlpGetTopicTitle functions.N”>å º B)€PUß~‚UÈEP(`notepad.exe tcopyrig.c',0)€‰€ƒãy±6‰‚ÈEP(`notepad.exe tenumcon.c',0)€‰€ƒãúN–±‰‚ÈEP(`notepad.exe tenumtop.c',0)€‰€ƒã©pÛΉ‚ÿTCOPYRIG.CDisplays the Copyright-Informations of all the Files in a Directory by using the HlpGetHelpTitle function.TENUMCON.CEnumerates the a list of all context-string entries possible with JumpId(...) macros and "-i"-command line parameters into a file...using the HlpEnumContext function.TENUMTOP.CEnumerates the contents of one Topic by using the HlpTopicEnumerate function.l¬—Q À NY€PUß~‚UÈEP(`notepad.exe tenumttl.c',0)€‰€ƒãl ñ‘‰‚ÈEP(`notepad.exe textract.c',0)€‰€ƒã”ÛlU‰‚ÈEP(`notepad.exe thashlst.c',0)€‰€ƒããÿ!€‰€‚ÿTENUMTTL.CEnumerates the list of Topics contained in a Help-File by using the HlpEnumTitles function.TEXTRACT.CExtracts an internal file, baggage-or Bitmap-file from a help-file by using the IFSOpenFile function.THASHLIST.CLists Titles of Topics and associated Context Ids created by HlpCreateStringForHashValue hat can be used in a Call to WinHelp API or on the command line via -i to open the Topic.Â å ¶ :€PUß~‚UÈEP(`notepad.exe thlpgrep.c',0)€‰€ƒã©pÛΉ‚ÈEP(`notepad.exe tjump.c',0)€‰€ƒãñ°Q‰‚ÈEP(`notepad.exe tifsenu.c',0)€‰€ƒã­²pÉ‚ÿTHLPGREP.CSearches for Topics that contain one of a set of Keywords in their Text using the HlpTopicEnumerate function.TJUMP.COpens the Viewer Application (Media Viewer 2.0 or Windows Help) for a given Topic using the HlpTopicJumpAPI function.TIFSENU.CDisplays a list of all internal files contained in an internal file system file (help file, annotations-file...) by using the IFSEnumerateFiles function. This is eventually useful to retrieve all Text informations from an Annotations-File (.ANN).ÄQ ®AË d‰€PUß~‚UÈEP(`notepad.exe tistopic.c',0)€‰€ƒãé$¼‰‚ÈEP(`notepad.exe tkwlist.c',0)€‰€ƒãóñ­Ê€‰€ã7q§µ€‰€‚ÈEP(`notepad.exe tmvgroup.c',0)€‰€ƒã©pÛΉ‚ÿTISTOPIC.CDetermines if a top®A ic using the given context-String exists in a help file using the IsTopic function. TKWLIST.CLists the Keywords contained in a Help file and the Titles of the Topics that do use these Keywords using HlpEnumKeyWords and HlpGetTopicTitle functions.TMVGROUP.CEnumerates the Titles of all Topic in a Media Viewer 2.0 File and their associated Group-Names by using the HlpTopicEnumerate function.-ÛA* $€€PUß~‚U€‚ÿF®A!B* $€8€ˆÄ°€‚ÿAdvanced Example ProgramsŽÛA¯Du ¸€3€PUß~‚UÈEP(`notepad.exe tcgi.c',0)€‰€ƒ‚ÈEP(`notepad.exe tcnv.c',0)€‰€ƒ‚ÿTCGI.CAllows to read a help file via an web browser over the internet supplying a http-server uising CGI programming interface. THTML does on-the-fly search of keywords in topic headings, decompilation of topic text and conversion of bitmaps to GIF-Graphics. Hotspots remain intact, even hotspots that link to other help or media viewer files.TCNV.CSource code for the THLP.CNV Text Import Library for Microsoft Word Version 6.0 (16 Bit). Using this Library, import of Help files into Microsoft Word is just a "File Open"...'!BÖD$ €€R€‚ÿ<¯DE) "€&€ây°Íï€ ‰‚ÿAbout Autoduck9ÖDKE1ºŠˆKE}EMGlossary2 E}E' €€¨Ø°€‚ÿGlossary‰^KEF+ &€¼€€‚€ ‚€ ‚ÿIn the Help Access Library you'll frequently encounter the follwing terms:N%}ETH) €K€¸€‚‚‚‚‚ÿA TopicOffset is a 32-Bit Value signifieing a physical Position in the Help File text. It contains in ist higher order bits a block number of a physical 4 KByte compressed text block, and in the lower Bits the offset into the decomressed Image of the Memory block.The TopicOffset is a physical value, most likely comparable to the recordnumber of a database.TopicOffsets are applicable to any Character of a help file, but some Help Access Library functions need to get a TopicOffset value that points exactly to the beginning of a new topic.'F{H$ €€¸€‚ÿ0 TH«H# €€€ ‚ÿùÔ{H¤I% €©€¸€‚ÿA hash code is a 32-Bit value representation of a context-Id string. Instead of storing context ID strings with several dozenz characters, Windows Help has been optimized by using hash values of 4 Bytes only. 7«HÛI' € €€ ‚€ ‚ÿÞ¤IžK% €=€¸€‚ÿA context-id is a string value uses as jump target in windows help files. The definition of a context id is done by the contents of a #-Footnote. When using a Context Id to resolve a jump, WinHelp computes the HashCode from the context-ID and searches for this HashCode in the |CONTEXT internal file. If the HashCode exists, it points to a TopicOffset value telling it where to find the topic data informations.BÛIàK' €6€€ ‚€ ‚ÿ&žKM% €€¸€‚ÿHelp files consist of several types of informations. To organize them, every data type has ist own file inside of the help file, while the HLP-file is a container of these internal files. This structure is most likelely comparable to a ZIP or LHA-Archiv.AàKGM1ûN‚ÏGMMWŒLibrary binaries:MM' €&€¨Ø°€‚ÿLibrary binaries•nGMN' €Ü€€‚€ ‚ÿThe registered full version of Help Access Library contains the following Binary Library representations:AMWN' €4€œŒÌ°€ ‚ÿDynamic Link Libraries:`(N·N8 @€P€l„†ƒâA†\Ê€ ‰€ ƒ‚ÿFileNameRedistributableContentsÙWN߀C T€³€P‚é}„ ƒ‚ƒƒ‚€ €ƒƒ‚€ €ƒƒ‚ÿhlpacc16.dllYesWindows 16 Bit dynamic link library useable for Windows 3.1, Windows 3.11, Windows 95 and Windows NT.hlpacc16.libNoImport library needed to link to hlpacc16.dll and created by IMPLIBhlpacc32.dllYesWindows 32 Bit dynamic link library use·N߀Mable for Windows 3.1x with WIN32s, Windows 95 and Windows NT 3.51 or newer. This version of the Library is NOT multithreading-capable.hlpacc32.libNoImport library to link to hlpacc32.dll using Borland C++ зNé‚: B€¡€P‚é}„†€ƒƒ‚ƒƒ‚ƒƒ‚ƒƒ‚ÿhlpacc3m.libNoImport library to link to hlpacc32.dll using Microsoft C++hlpaccmt.dllYesMultithreading-capable windows 32 Bit dynamic link library useable for Windows 95 and Windows NT 3.51 or newer. Windows 3.1x with WIN32s can also be used with this Library version, but they do not support multithreading.hlpaccmt.libNoImport library to link to hlpaccmt.dll using Borland C++hlpaccmm.libNoImport library to link to hlpaccmt.dll using Microsoft C++(߀ƒ$ €€€ ‚‚ÿ@é‚Qƒ' €2€œŒÌ°€ ‚ÿStatic Link Libraries:`(ƒ±ƒ8 @€P€l„†ƒâA†\Ê€ ‰€ ƒ‚ÿFileNameRedistributableContentsýËQƒ®„2 2€—€P‚é}„ ƒ‚ƒƒ‚‚ÿhlpast16.libNoStatic link library to be bound with Windows 16-Bit programs created by Borland C++hlpast32.libNoStatic link library to be bound with Windows 32-Bit programs created by Borland C++ý×±ƒ«…& €¯€€‚‚‚ÿNote: Static linking means that both your application program and help access library are bound into one DLL or EXE file containing your program and the part of Help Access Library required by your application.7®„â…' € €œŒÌ°€ ‚ÿHeader files:`(«…B†8 @€P€l„†ƒâA†\Ê€ ‰€ ƒ‚ÿFileNameRedistributableContents `â…Mˆ« $Á€P‚é}„âÈEP(`notepad.exe hlpacces.h',0)€‰€ƒƒ‚ÈEP(`notepad.exe shgimpor.h',0)€‰€ ƒ€ƒ‚ÈEP(`notepad.exe seg.h',0)€‰€ƒƒ‚‚ÿhlpaccess.hNoHeader file for C/C++ programming to access help-file data (Internal File System, KeyWords, Titles, Topic Text, formatting etc.).shgimpor.hNoHeader file required to retrieve graphics and macros from SHG files. seg.hNoHeader file required to retrieve macro and positioning data from Hotspots contained in SHG files. &B†sˆ# €€€‚ÿ5Mˆ¨ˆ' €€œŒÌ°€ ‚ÿMake files:`(sˆ‰8 @€P€O„†ƒâA†\Ê€ ‰€ ƒ‚ÿFileNameRedistributableContents1±¨ˆ9Š€ ΀c€€‚È!EP(`notepad.exe makefile.msc',0)€‰€ƒƒ‚È EP(`notepad.exe makefile.bc',0)€‰€ƒƒ‚‚ÿmakefile.mscNoMakefile for example programs based on Microsoft 32-Bit C-Compilersmakefile.bcNoMakefile for example programs based on Borland 32-Bit C-Compilers1 ‰jŠ' €€œŒÌ°€ ‚ÿOthers:`(9ŠÊŠ8 @€P€l„†ƒâA†\Ê€ ‰€ ƒ‚ÿFileNameRedistributableContentsZjŠWŒ3 4€µ€P‚é}„†€ƒƒ‚ÿthlp.cnvYesMicrosoft Word 6.0 Text import library for help files. After copying this file into your WINWORD directory and restarting word, you can now import Help Files into word by just opening them by "File Open" Menu Item.This Version has been linked statically with hlpast16.lib to prevent problems finding the hlpacc16.dll from Word.1ÊŠˆŒ1iÿÿÿÿÿÿÿÿÿÿÿÿˆŒÀ8 WŒÀ. *€€€ €‚‚‚‚ÿRedistributable: A file that you are allowed to copy together with your Program at no additional charge in case you have paid a redistributable license for Help Access Library.Your program must have a copyright notice naming the Help AccessLibrary client.AˆŒŽ1¶>Šˆ$ƒŽ;Ž ŠAPI-Introduction:À;Ž' €&€¨Ø°€‚ÿAPI-Introduction6ŽqŽ' €€œŒÌ°€ ‚ÿPresumptionsdA;ŽÕŽ# €‚€€‚ÿBefore you start to work with Help Access Library you need to:å±qŽº4 6€c€P¸J‚8€€ƒ‚€€ƒ‚ÿ·Know the basics of C programming as the example programs are all defined in C.·Know the basics of how to create a Windows Help file as a source project and compile it.J#ÕŽÀ' €F€œŒÌ°€ ‚ÿBasic Windows Help File concepºÀÀts>ºNÀ' €.€ˆÄ°€‚ÿInternal File System+ÀyÂ& € €€‚‚‚ÿWindows Help files and Media Viewer files are orgainzed internally as "Internal File Systems" meaning that a help file consists of many other internal files much the same way a ZIP or LHA-Archiv does. The internal files are not compressed like the ones used with ZIP, but for an application program using help files, these files can be handled like a set of distinct files located in a special directory.To see a listing of all files contained in a given help file, you might try the TIFSENU.EXE program example:&NÀŸÂ# €€€‚ÿà«yÂÅ5 8€W€O€€‚ÿC:\hlpacces>tifsenu hlpacces.hlpFileOffset:0x00000010 Size:0x0000007c FileName:"bag.ini"FileOffset:0x00011b00 Size:0x00000826 FileName:"|CONTEXT"FileOffset:0x0001082d Size:0x00000002 FileName:"|CTXOMAP"FileOffset:0x000105bb Size:0x00000269 FileName:"|FONT"FileOffset:0x00010aa2 Size:0x00000826 FileName:"|KWBTREE"FileOffset:0x00010838 Size:0x00000250 FileName:"|KWDATA"FileOffset:0x00010a91 Size:0x00000008 FileName:"|KWMAP"FileOffset:0x000004c4 Size:0x00000284 FileName:"|SYSTEM"FileOffset:0x00000751 Size:0x0000fe61 FileName:"|TOPIC"FileOffset:0x000112d1 Size:0x00000826 FileName:"|TTLBTREE"FileOffset:0x0001232f Size:0x00001a4f FileName:"|bm0"4 ŸÂ³Ç' €€€‚‚‚‚ÿFiles placed automatically by HC31 or HCW usually start with a "|"-Character, the file "bag.ini" in this example is a file included into the IFS by placing it into the [baggage] of an HPJ help project file.This listing shows up where a internal file starts inside of the .HLP-File and the size of the internal file, so you could now theoretically read this files using your own code. But to easify this Process, Help Access Library supports functions to make reading from an internal file as easy as "open" and "close":&ÅÙÇ# €€€‚ÿQ+³Ç*È& €V€Œˆ¸€‚ÿAccessing the IFS by Help Access LibraryNÙÇ©É1 0€€€ãÁž“€‰€‚‚ÿFirst you have to open the physical help or media viewer file using the Function IFSOpen. The result of this operation is a HIFS-Handle you'll need to use for all subsequent operations on this help file. You can't use this handle for Windows-Based file I/O functions, you have to use the Help Access Library functions instead.ãŸ*ÈŒÊD V€?€€‚‚ãÁž“€‰€‚‚‚‚ã–Ý3É€‰€‚‚‚ÿ{ HIFS ifs; ifs = IFSOpen("Filename.hlp"); if (ifs) { /* File is available, could be opened and is indeed an IFS */ IFSClose(ifs); }}'õ©É³Ë2 2€ë€€‚ã–Ý3É€‰€‚‚ÿAfter all operations on the help file have completed you can close the file by calling IFSClose to free up memory and the file handle associated with the file. Be aware to close all other handles assigned to this HIFS before closing it.H"ŒÊûË& €D€Œˆ¸€‚ÿAccessing a named internal fileýÀ³ËøÌ= H€€€ãÁž“€‰€ã”ÛlU€‰€‚‚ÿOnce you have a HIFS-Handle retrieved by IFSOpen you can now open an internal file for reading by using the IFSOpenFile function. The Result of this operation is a HIFSFILE-Handle:ß›ûË×ÍD V€7€€‚‚ã”ÛlU€‰€‚‚‚‚ã²:Ê¡€‰€‚‚‚ÿ{ HIFSFILE ifsfile; ifsfile = IFSOpenFile(ifs,"|bm0"); if (ifsfile) { /* A file of that name exists. */ IFSCloseFile(ifsfile); }}°ŠøÌ‡Î& €€€‚‚‚ÿNote that an HIFSHANDLE does not requre ist own operating system file handle. It is just a memory structure requiring some 100 bytes.A×ÍÈÎ& €6€Œˆ¸€‚ÿReading an internal file8í‡Î K d€Û€€‚ã$B¯Ü€‰€ãŠõÏJ€‰€ãŠõÏJ€‰€‚‚‚ÿOnce you have an HIFSFILE handle you can now perform read operations by using IFSReadFile and IFSSeekFile. To ask for the size of an internal file, you might use a call to IFSSeekFile with the whence-parameter set to 2.ÈÎ À±ÈÎ^ Š€c€€ƒ‚ƒ‚ƒ‚‚‚ãŠõÏJ€‰€‚ãŠõÏJ€‰€‚‚‚‚‚‚ƒ‚ƒ‚ƒã$B¯Ü€‰€‚ƒ‚ÿ{ DWORDdwSize; HGLOBALhmem; LPSTRpmem; /* Get file size, and go back to start of file */ dwSize = IFSSeekFile(ifsfile, 0, 2); IFSSeekFile(ifsfile, 0, 0); /* Allocate a memory-Block of that size*/ hmem = GlobalAlloc(LPTR, dwSize); if (hmem) {pmem = (LPSTR) GlobalLock(hmem);/* Read Data from the internal file into the memory block */IFSReadFile(ifsfile, pmem, dwSize);GlobalUnlock(hmem);, G$ €€€‚‚ÿ }}&m# €€€‚ÿM&Gº' €L€ˆÄ°€‚ÿSpecial Windows Help internal files˜tmR$ €è€€‚‚ÿWindows Help uses several internal files to represent the data retrieved from a Help Project during compilation:uüºÇy#À€ùŠý€€€‚ÿ~€€€€€€€€‚€€‚€€€€‚ãy±6€‰€‚ÿÿÿ|SYSTEMContains:·Copyright=/citation= option strings·Group names for media Viewer files·[window]-Definitions·compression method informations·[config]-macros·icon= icon dataHelp Access Library representation: HlpGetHelpTitle¿nR†Q#r€ÜŠý€€€‚ÿ,€4€‚‚ãóñ­Ê€‰€‚ÿÿÿ|KWBTREE|KWDATA|KWMAPKeyword-List (K-Footnotes)Help Access Library representation:HlpEnumKeyWords)ÚǯO#l€µŠý€€€‚ÿ*€€‚ãúN–±€‰€‚ÿÿÿ|CONTEXTA B-Tree associating hash values representing jump targets (#-footnotes) and TopicOffsets where these targets are located in the |TOPIC internal file.Help Access Library representation:HlpEnumContext.Åw†tN#l€îŠý€€€‚ÿ*€€‚ã©pÛ΀‰€‚ÿÿÿ|FONTA list of the fonts and colors used in a help file.Help Access Library representation: HlpTopicEnumerate¯xB#R€…Šý€€€‚ÿ€€‚ÿÿÿ|CTXOMAPA list of numeric Ids defined in the [map] section of a help project and the associated hash values. Notze that this list is no B-Tree, so the size of this list is somewhat limited.$t÷ [#„€IŠý€€€‚ÿB€€‚ãl ñ‘€‰€ã7q§µ€‰€‚ÿÿÿ|TTLBTREEA B-Tree list containing all TopicOffset values of Topics in the |TOPIC internal file and their associated Title-Strings ($-Footnote). Note that entries having no title are also included into this list.Help Access Library representation:HlpEnumTitles, HlpGetTopicTitle.QåxH l#¦€ËŠý€€€‚ÿd€€‚€€€€€€€€‚‚ã©pÛ΀‰€‚ÿÿÿ|TOPICThe most complex part of the Help file containing most of the data retrieved from the RTF-Sources:·Text·Formatting informations (Tables, fonts...)·Titles ($-Footnotes) a second time in addition to |TTLBTREE·Bitmaps included with { bmcwd ... }The |TOPIC-File is usually stored as a compressed file where every compressed data block is 4 KByte or 2 KByte in Size, so the whole structure is rather complex.Help Access Library representation: HlpTopicEnumerateºy÷  A#R€òŠý€€€‚ÿ€€‚ÿÿÿ|PhrasesContains a list of phrases (most used words and parts of sentences) found during compressuib in a help file.…CH ‡ B#T€†Šý€€€‚‚ÿ€,€‚ÿÿÿ|PhrIndex|PhrImageThe same as |Phrases for WinHelp 4.0 files.ë¨ rC#T€QŠý€€€‚‚ÿ€8€‚ÿÿÿ|bm orbmA Bitmap or metafile referenced by { bmx filename } and always converted to a file format very likely to the SHG file format used by SHED.&‡ ˜# €€€‚ÿ\5rô' €j€ˆÄ°€‚ÿTopicOffset values linking internal files together#ó˜#A0 .€ç€€â>€î±€‰€‚ÿReferences done from the |CONTEXT, |KWDATA or |TTLBTREE internal file to the |TOPIC internal file are done using a 32 bit value named TopicOffset in Help Access library. These TopicOffset values are never used in the reô#AÀgular Windows Help API, as they reference directly into the binary location of data stored in the |TOPIC file. For the |TOPIC file is being compressed, the meaning of a TopicOffset is rather complex, but don't worry about that as Help Access Library manages these for you.&ôIA# €€€‚ÿL%#A•A' €J€ˆÄ°€‚ÿHash Values and Context ID strings³uIAHE> J€ë€€‚‚ããÿ!€‰€ãn´–N€‰€‚ÿA context ID string is a string connected to a #-Footnote to signify a Jump target for a popup or a topic. Context ID strings are usually not stored explicitly in a help file with the exception of context ID strings stored in SHG segmented hypergraphics and macros.Instead Windows Help computes hash value representations from the context ID strings and stores these hash values into the |CONTEXT internal file. As the hash value contains much less information than the context ID string it is impossible to regenerate the context ID string from the hash value. Help Access Library contains the function HlpCreateStringForHashValue to generate a string having the same hash value representation, but it won't usually generate the same string passed to generate the hash value. To generate a hash value representation yourself you can use the HlpGenerateHashValue function.(•ApE$ €€€‚‚ÿFHE¶E' €>€œŒÌ°€ ‚ÿHelp Access Library concepts?pEõE' €0€ˆÄ°€‚ÿEnumeration callbacksë¶EH4 6€×€€‚‚‚‚ã?j2€‰€‚ÿFor the amount of data stored in a help file can be pretty huge we choose to use enumeration callback based functionality whereever the amount of data to be retrieved is not limited. This is especially true for the Topic data, the context, key word and title lists.For this reason most of the Help Access Library API cannot get accessed by interpreting languages like Visual Basic and Windows Help.Examples for the use of these callbacks are to be found in a the example programs.&õE:H# €€€‚ÿ>HxH' €.€ˆÄ°€‚ÿAccessing topic textzI:HòI1 0€“€€ã]Ïœ‘€‰€‚‚ÿAs the |TOPIC internal file references into the |FONTS and the |Phrases internal file and gets referenced by |KWDATA and |CONTEXT internal files, all these files need to be loaded into memory before accessing the topic text. The result of this process is summerized into a HTOPIC handle retrieved by calling HlpTopicOpen.à™xHÒJG \€3€€ƒ‚‚ã]Ïœ‘€‰€‚‚‚‚‚‚ã-Càr€‰€‚‚‚ÿ{ HTOPIChtopic; htopic = HlpTopicOpen(ifs, HTO_FONTS | HTO_CONTEXT | HTO_KEYWORDS); if (htopic) { HlpTopicClose(htopic); } }û®òIÍLM h€]€€‚‚‚ã]Ïœ‘€‰€ã3Z¡‘€‰€ã©pÛ΀‰€‚‚‚ÿIf your application does not need to know about keyword usage and jump targets, you can omit the HTO_CONTEXT and HTO_KEYWORDS flags to speed up processing.If your application is interested in plain text data only, you can even omit HTO_FONTS. HlpTopicOpen is a rather slow function so you should call it once when opening the help file and use it for all subsequent calls to HlpTopicSeek and HlpTopicEnumerate.<ÒJ M' €*€ˆÄ°€‚ÿReading topic textè“ÍLñNU x€'€€ã3Z¡‘€‰€ã3Z¡‘€‰€ãl ñ‘€‰€ã7q§µ€‰€‚‚ÿTo read the topic text you first have to call HlpTopicSeek to setup the HTOPIC-Handle to read from the specified address. The TopicOffset value transfered to HlpTopicSeek has to point directly to the beginning of a topic, so you should retrieve it by a call to HlpEnumTitles or HlpGetTopicTitle. A TopicOffset if zero (0x00000000) is always valid and signifies the start of the file.\- MMO/ .€Z€€ã3Z¡‘€‰€‚ÿ HlpTopicSeek(htopic, 0x00000000L);´DñN ‚p ®€‰€€‚‚‚€ã²~¦€‰€ãç‹ç©€‰€‚‚‚‚‚ã©pÛ΀‰€‚€‚ã©pÛ΀‰€ãç‹ç©€‰€‚ÿAfter the seek operation has been performed you are now ready to MO ‚Àread the topic text by enumerting it thru a callback function:BOOL CALLBACK MyCallback(LPCSTR lpszTopicText, DWORD dummy, TEXTTYPE eTextType, LPARAM lParam){ return TRUE;}HlpTopicEnumerate(htopic, MyCallback, 0L);The HlpTopicEnumerate function retrieves the text from the help file and passes it to the callback paragraph by paragraph. Several TextTypes telling the callback what to do about the data transfered, it is about the same as a message parameter in a Window Procedure.&MO3‚# €€€‚ÿM& ‚€‚' €L€ˆÄ°€‚ÿHandling of formatting informations؈3‚X…P n€€€€ €€ €€ €ãç‹ç©€‰€ãç‹ç©€‰€‚‚‚ÿHelp Access Library transfers all formatting informations like bold, itcalic, font size, color etc. as strings in RTF (Richt Text Format) very likely to the format they had in the help file source code. These formatting informations are sent in texttype=TOPIC_RTF_TEXT. The text data itself is not included in the RTF data and it is sent as texttype=TOPIC_TEXT.In case your application does not need to process any formatting informations you'll usually need to process the texttypes TOPIC_TEXT and TOPIC_TEXT_CONTROL. TOPIC_TEXT_CONTROL contains the same informations as TOPIC_RTF_TEXT for carriage returns, tabs and line feeds.q2€‚ɇ? L€e€€‚ã©pÛ΀‰€‚‚ã?j2€‰€‚ÿIf your application needs to do a good representation of the text formatting, you need to process TOPIC_RTF_TEXT and TOPIC_TEXT, in addition Help Access Library sends RTTF initialization sequenced in TOPIC_RTF_INIT and the ending "}" in TOPIC_RTF_EXIT. Thus you can add your own stylesheets, headlines etc. after TOPIC_RTF_INIT or you can inhibit TOPIC_RTF_INIT on subsequent calls to HlpTopicEnumerate after TOPIC_RTF_INIT has been included once.To get a close idea of how formatting is to be done, take a look at the TRTF, TCNV and TCGI-examples.&X…ï‡# €€€‚ÿ;ɇ*ˆ' €(€œŒÌ°€ ‚ÿAccessing Bitmapsà£ï‡ Š= H€G€€ãk£© €‰€ã?j2€‰€‚‚ÿAll Bitmaps and Metafile graphics used in Help Files are stored in a file format most likely to the Segmented Hypergraphics SHG format used by the SHED help design tool. To give your application access to the data included in these files, include the files SHGIMPOR.H and SEG.H in your C-Sourcecode and use the SHGImport function to convert data to DIB or METAFILE format. See TCNV example for more details.1*ˆ;Š1hÿÿÿÿÿÿÿÿÿÿÿÿ;Šr‹7 Šr‹4 6€€€ €‚€€€€‚ÿTopicOffsetThe higher order bits signifieing the number of a compressed memory block in the |TOPIC-file while the lower order bits pointing to a byte into the decompressed memory block starting from the first topic link block contained in that block.F;Џ‹1; ÿÿÿÿÿÿÿÿ¸‹÷‹+ÆLicenses and ordering?r‹÷‹' €0€¨Ø°€‚ÿLicenses and Ordering)÷¸‹ Ž2 2€ï€€‚‚ãÝ>ú€‰€‚ÿHelp Access Library is not and has never been free Software. You have the right to test the Shareware-Version of Help Access Library for 30 Days, afterwards you'll have to register (buy) it, or delete it. You do not have the right to use the example programs beyond this time period.Help Access Library licensing price is 999 US $ or 1499 DM for a redistributable License. This will contain the License to use the DLLs and LIB files in your own application and distribute the DLL-files with it.y+÷‹™ŽN l€V€€‚È EP(`WINHELP.EXE HSORDER.HLP',0)€‰€‚ÿPlease order with the Ordering Form> Ž׎' €.€œŒÌ°€ ‚ÿGiving you a License;™ŽÁ4 6€€€‚‚ãÝ>ú€‰€‚‚‚ÿAfter paying the registration fee Dipl Ing. Bernd Herd give you the right to use the Help Access Library Appliaction development Files on one Computer. Using a Software is analog to using a Book: You may use it on one single Computer Simultanio׎Ár‹usly. Copys are to be done for Backup purposes only.You've got the right to sell your Programs with the licensed File-Versions of Help Access Library.You are not allowed to change, disassemble or otherwise reenginere Help Access Library or its Component Librarys.&׎DÁ# €€€‚ÿ:Á~Á' €&€œŒÌ°€ ‚ÿLimited WarrantyÞ·DÁ\Â' €o€€‚‚‚‚ÿWe give no Warranty for Help Access Library to fit any given purpose. Any Program may be errornous, so we give no warranty for Costs you may have thru using Help Access Library.Q*~Á­Â' €T€œŒÌ°€ ‚ÿLicense Agreement for ShareWare-VersionZ\Â.Ã' €´€€‚‚‚‚‚ÿThe Shareware-Version of LZAPI may be tested for 30 Days.You also have the right to¥p­ÂÓÃ5 :€à€På€J‚䀃€‚‚€ƒ€‚ÿ·Distribute the unchanged Archiv. ·Test Help Access Library on ONE Computer for a maximum of 30 Days. &.ÃùÃ# €€€‚ÿDÓÃ=Ä' €:€œŒÌ°€ ‚ÿContacting the Developers:ÊùÃÅ- (€;€€‚‚‚‚‚‚‚‚‚‚ÿHerd Software EntwicklungDipl. Ing. Bernd HerdRudolf-Virchow-Str. 868642 BürstadtGermanyTel.: +49-6206-707775Fax.: +49-6206-707776EMail-Adressen:¾Ž=ÄÅÅ0 .€€€€ ‚€‚‚‚‚ÿInterNet: HerdSoft@aol.comCompuServe: 100545,3001AOL: HerdSoftFIDO-Netzadresse: 2:2464/420.10. Word wide Web: http://www.herdsoft.comfÅ+ÆN l€0€€‚È EP(`WINHELP.EXE HSORDER.HLP',0)€‰€‚ÿPrint your Order9ÅÅdÆ1φdƩƈÊContentsE+Æ©Æ' €<€¨Ø°€‚ÿHLPACCES Help File Contents¿˜dÆhÇ' €1€ °°€‚ÿTo display a list of topics by category, click any of the contents entries below. To display an alphabetical list of topics, choose the Index button.6©ÆžÇ' €€ˆÄ°€‚ÿCOM Elementsy@hÇÈ9 B€€€°°ãdò€‰‚ãKvf§‰‚ãwj§‰‚ÿObjects and InterfacesObject MethodsObject Properties'žÇ>È$ €€R€‚ÿ8ÈvÈ' €"€ˆÄ°€‚ÿC/C++ ElementsŒL>ÈÉ@ P€˜€°°ãäœ²Š€‰‚ã+3‰‚ãÖ¸­|‰‚ã?Þ²Á‰‚ÿClasses and Class MembersFunctionsMessagesStructures and Enums'vÈ)É$ €€R€‚ÿ/ÉXÉ' €€ˆÄ°€‚ÿOther]$)ɵÉ9 B€H€°°ãˆ‰á󀉂ãÙNn]‰‚ãyg_É‚ÿOverviewsModulesConstants)XÉÞÉ% €€R€‚‚ÿBµÉ Ê& €8€ °°€‚ÿHelp file built: 12/17/99'ÞÉGÊ$ €€R€‚ÿA ʈÊ- *€(€ °°ây°Í‚‚ÿAbout Autoduck?GÊÇÊ1ÖÿÿÿÿÿÿÿÿÿÿÿÿÇÊ^ÌAbout Autoduck8ˆÊÿÊ' €"€ˆÄ°€‚ÿAbout Autoduck;ÇÊ:Ì6#:€ ( €€< °œœ€‚‚ÿÿÿThe sources for this Help file were generated by Autoduck, the source code documentation tool that generates Print or Help files from tagged comments in C, C++, Assembly, and Basic source files.For more information, contact Eric Artzt (erica@microsoft.com).$ÿÊ^Ì" €€€ÿQ :̯Ì1‘$ƒ † ¯ÌÿÿÿÿïÌContents: Objects and Interfaces@^ÌïÌ' €2€¨Ø°€‚ÿObjects and InterfacesI¯Ì8Í1†1† 8ÍÿÿÿÿpÍContents: Object Methods8ïÌpÍ' €"€¨Ø°€‚ÿObject MethodsL8ͼÍ1‡ †E† ¼Íÿÿÿÿ÷ÍContents: Object Properties;pÍ÷Í' €(€¨Ø°€‚ÿObject PropertiesH¼Í?Î11†U† ?ÎÿÿÿÿvÎContents: Object Events7÷ÍvÎ' € €¨Ø°€‚ÿObject EventsT#?ÎÊÎ1—E†q† ÊÎÿÿÿÿ ÏContents: Classes and Class MembersCvÎ Ï' €8€¨Ø°€‚ÿClasses and Class MembersDÊÎQÏ1;U†QτϕContents: Functions3 Ï„Ï' €€¨Ø°€‚ÿFunctions ZQÏ›± 0µ€°°ã¥P ·€‰‚ããÿ!‰‚ãúN–±‰‚ãóñ­Ê‰‚ãl ñ‘‰‚ãóãs0‰‚ãn´–N‰‚ãy±6‰‚ã7q§µ‰‚ãíâ¼±‰‚ã-Càr‰‚ã©pÛΉ‚ãñ°„Ï› ÏQ‰‚ã]Ïœ‘‰‚ã3Z¡‘‰‚ã–Ý3ɉ‚ã²:Ê¡‰‚ã­²pÉ‚㡞b‰‚ãÁž“‰‚ÿCONTEXTNUMPROCHlpCreateStringForHashValueHlpEnumContextHlpEnumKeyWordsHlpEnumTitlesHlpFreeHelpTitleHlpGenerateHashValueHlpGetHelpTitleHlpGetTopicTitleHlpIsTopicHlpTopicCloseHlpTopicEnumerateHlpTopicJumpAPIHlpTopicOpenHlpTopicSeekIFSCloseIFSCloseFileIFSEnumerateFilesIFSENUMPROCIFSOpenú„Ï•k ¤€€°°ã”ÛlU€‰‚ã$B¯Ü‰‚ãŠõÏJ‰‚ãfzå—‰‚ãé$¼‰‚ã«’+뉂ãÊÚ‰‚ãk£© ‰‚ã‡v[‰‚ã²~¦‰‚ÿIFSOpenFileIFSReadFileIFSSeekFileIsSecondaryWindowIsTopicKWENUMPROCSHGExportSHGImportTITLEENUMPROCTOPICENUMPROCC›Ø1wq†›Øÿÿÿÿ Contents: Messages4 • ( €€¨Ø°€‚‚ÿMessagesOØ[1€Ï[™èContents: Structures and Enums> ™' €.€¨Ø°€‚ÿStructures and EnumsO[è2 4€:€°°ãƒjZÝ€‰‚ãç‹ç©‰‚ÿHELPFILETITLETEXTTYPED™,1w›Û,ÿÿÿÿ_Contents: Overviews3 è_' €€¨Ø°€‚ÿOverviewsB,¡1:Ï¡ÒÛContents: Modules1 _Ò' €€¨Ø°€‚ÿModules .¡ÛÛ „]€°°ã Œ-䀉‚〠°°€‚ÿFilename: C:/HLPACCES/HASH.C4ãA\B& €€„¬°€‚ÿDescriptionmF(BÉB' €Œ€ °°€‚‚ÿComputes the Hash-Code for a given Context-String.ISTOPIC-Project.; \BC1—“€‚C?C¥DHLPACCES.H;ÉB?C' €(€¨Ø°€‚ÿModule HLPACCES.HI#CˆC& €F€ °°€‚ÿFilename: C:/HLPACCES/HLPACCES.H4?C¼C& €€„¬°€‚ÿDescriptionéÁˆC¥D( €ƒ€ °°€‚‚ÿInclude-File for programs that use the Herd Software help file access library HLPACC16.DLL or HLPACC32.DLL. (C) 1996 Herd Software Development Rudolf-Virchow-Str. 8/68642 Bürstadt / Germany; ¼CàD1)µ‚àDEFhlpalloc.c;¥DE' €(€¨Ø°€‚ÿModule hlpalloc.cI#àDdE& €F€ °°€‚ÿFilename: C:/HLPACCES/HLPALLOC.C4E˜E& €€„¬°€‚ÿDescription{TdEF' €¨€ °°€‚‚ÿMemory allocation procedures for debugging purposes.Help Access Library Project.6˜EIF1‚=ƒIFFkGIFS.C6FF' €€¨Ø°€‚ÿModule IFS.CDIFÃF& €<€ °°€‚ÿFilename: C:/HLPACCES/IFS.C4F÷F& €€„¬°€‚ÿDescriptiontMÃFkG' €š€ °°€‚‚ÿCode for internal File System of Windows HelpHelp Access Library Project.: ÷F¥G1Iµ‚õƒ¥GßG÷HIFSENUM.C:kGßG' €&€¨Ø°€‚ÿModule IFSENUM.CH"¥G'H& €D€ °°€‚ÿFilename: C:/HLPACCES/IFSENUM.C4ßG[H& €€„¬°€‚ÿDescriptionœu'H÷H' €ê€ °°€‚‚ÿCode to enumerate all files contained in a internal file System to a callback-Procedure.Help File Access Project.; [H2I1=ƒ}„ 2ImITJISSECOND.C;÷HmI' €(€¨Ø°€‚ÿModule ISSECOND.CI#2I¶I& €F€ °°€‚ÿFilename: C:/HLPACCES/ISSECOND.C4mIêI& €€„¬°€‚ÿDescriptionjC¶ITJ' €†€ °°€‚‚ÿTest validity of Secondary Window NamesHelp File Acces Project.: êIŽJ1VõƒA…!ŽJÈJíKistopic.c:TJÈJ' €&€¨Ø°€‚ÿModule istopic.cH"ŽJK& €D€ °°€‚ÿFilename: C:/HLPACCES/ISTOPIC.C4ÈJDK& €€„¬°€‚ÿDescription©KíK( €€ °°€‚‚ÿCode to search for the Existence of a specified Context-String in the CONTEXT internal help file.Help Access Library Project.: DK'L1N}„þ…"'LaL~MJUMPAPI.C:íKaL' €&€¨Ø°€‚ÿModule JUMPAPI.CH"'L©L& €D€ °°€‚ÿFilename: C:/HLPACCES/JUMPAPI.C4aLÝL& €€„¬°€‚ÿDescription¡z©L~M' €ô€ °°€‚‚ÿCode to search for a way to open the specified topic in the appropiate Viewer application.Help Access Library Project.< ÝLºM1‹A…ø†#ºMöMPOLDCONTEXT.C<~MöM' €*€¨Ø°€‚ÿModule LDCONTEXT.CI#ºM?N& €F€ °°€‚ÿFilename: C:/HLPACCES/LDCONTEX.C4öMsN& €€„¬°€‚ÿDescriptionÝ´?NPO) €i€ °°€‚‚‚ÿHandling of CONTEXT-FileLoads CONTEXT-File into main memory and does a qsort of the Data by TopicOffset-Values to support Generation of #-FootnotesHelp Access Library Project.: sNŠO1 þ…D$ŠOÄO©€LDFONTS.C:POÄO' €&€¨Ø°€‚ÿModule LDFONTS.CH"ŠO€& €D€ °°€‚ÿFilename: C:/HLPACCESÄO€PO/LDFONTS.C4ÄOL€& €€„¬°€‚ÿDescription]6€©€' €l€ °°€‚‚ÿHandling of FONTS-FileHelp Access Library Project.7L€à€1¬ø†T%à€’‚LDKW.C7©€' € €¨Ø°€‚ÿModule LDKW.CEà€\& €>€ °°€‚ÿFilename: C:/HLPACCES/LDKW.C4& €€„¬°€‚ÿDescriptionÓ\’‚/ ,€§€ °°€‚ãóñ­Ê‰‚‚ÿLoads all Keywords-Positioning Informations into Main Memory and does a qsort of the Data by TopicOffset-Values to support Generation of K-FootnotesNot Based on HlpEnumKeyWordsHelp Access Library Project.: Ì‚1)Dì&Ì‚ƒþƒLZCOMPR.C:’‚ƒ' €&€¨Ø°€‚ÿModule LZCOMPR.CH"Ì‚Nƒ& €D€ °°€‚ÿFilename: C:/HLPACCES/LZCOMPR.C4ƒ‚ƒ& €€„¬°€‚ÿDescription|UNƒþƒ' €ª€ °°€‚‚ÿCode to decompress the LZ77-Compressed memory blocks.Help Access Library Project.7‚ƒ5„1 Td'5„l„G…PARA.C7þƒl„' € €¨Ø°€‚ÿModule PARA.CE5„±„& €>€ °°€‚ÿFilename: C:/HLPACCES/PARA.C4l„å„& €€„¬°€‚ÿDescriptionb;±„G…' €v€ °°€‚‚ÿtopic Paragraph enumerationHelp Access Library Project.: å„…1*ìý(…»…´†PHRASES.C:G…»…' €&€¨Ø°€‚ÿModule PHRASES.CH"…†& €D€ °°€‚ÿFilename: C:/HLPACCES/PHRASES.C4»…7†& €€„¬°€‚ÿDescription}V†´†' €¬€ °°€‚‚ÿHandling of Phrases and PhrIndex, PhrImage etc. Files.Help Access Library Project.97†í†1 du)í†&‡ÿ‡PTABLE.C9´†&‡' €$€¨Ø°€‚ÿModule PTABLE.CG!í†m‡& €B€ °°€‚ÿFilename: C:/HLPACCES/PTABLE.C4&‡¡‡& €€„¬°€‚ÿDescription^7m‡ÿ‡' €n€ °°€‚‚ÿtopic Table enumerationHelp Access Library Project.9¡‡8ˆ1Cý&*8ˆqˆƒ‰PTITLE.C9ÿ‡qˆ' €$€¨Ø°€‚ÿModule PTITLE.CG!8ˆ¸ˆ& €B€ °°€‚ÿFilename: C:/HLPACCES/PTITLE.C4qˆìˆ& €€„¬°€‚ÿDescription—p¸ˆƒ‰' €à€ °°€‚‚ÿCode to Help-File system global Data like Help-File title, Copyright-String etc.Help Access Library Project.: 숽‰1u²+½‰÷‰ãŠPTOPCRD.C:ƒ‰÷‰' €&€¨Ø°€‚ÿModule PTOPCRD.CH"½‰?Š& €D€ °°€‚ÿFilename: C:/HLPACCES/PTOPCRD.C4÷‰sŠ& €€„¬°€‚ÿDescriptionpI?ŠãŠ' €’€ °°€‚‚ÿCode to read a Data-Block from TOPIC-FileHelp Access Library Project.; sŠ‹1Û&ú,‹Y‹SHGEXPOR.C;ãŠY‹' €(€¨Ø°€‚ÿModule SHGEXPOR.CI#‹¢‹& €F€ °°€‚ÿFilename: C:/HLPACCES/SHGEXPOR.C4Y‹Ö‹& €€„¬°€‚ÿDescription-¢‹* "€€ °°€‚‚‚‚ÿExport-Support for SHG-Files.Converts DIBs and Hótspot-Informations into SHG (Segmented HyperGraphic) Files like the ones created by Microsofts SHED or HC31.This function does not support creation of Metafile-based SHG-Files.Help Access Library Project.; Ö‹>1…²ÿÿÿÿ->yÍŽSHGIMPOR.C;y' €(€¨Ø°€‚ÿModule SHGIMPOR.CI#>Â& €F€ °°€‚ÿFilename: C:/HLPACCES/SHGIMPOR.C4yö& €€„¬°€‚ÿDescription×®ÂÍŽ) €]€ °°€‚‚‚ÿImport-Support for SHG-Files.Converts SHG-Files (Segmented HyperGraphic) Files created by Microsofts SHED or HC31 into DIB or METAFILE-FormatHelp Access Library Project.?ö 1êÿÿÿÿÜ. DkÄCONTEXTNUMPROC8ÍŽD' €"€¨Ø°€‚ÿCONTEXTNUMPROCŠ7 ÚÀS t€o€ °°€€€€€€€€€€€€€‚ãúN–±‰‚‚ÿBOOL CALLBACK CONTEXTNUMPROC(DWORD dwHashValue, DWORD dwTopicOffset, LPARAM lParam) Type-DeDÚÀÍŽfinition for an application-supplied callback-Function that will be called each time a Hash-Value has been retrieved from the Help-File by the HlpEnumContext function.Defined in: C:/HLPACCES/HLPACCES.H5DÁ& €€„¬°€‚ÿReturn Value‹eÚÀšÁ& €Ê€ °°€‚ÿThe Callback-Function cancels the Enumeration by return 0, every other value continues enumeration3 ÁÍÁ& €€„¬°€‚ÿParameters7šÁÂ( €€°°€€‚ÿdwHashValueÖÍÁÇÂ- (€-€°à€ããÿ!‰‚ÿHashcode for the Context-ID String (#-Footnote) a valid context-String for this value may be created by the HlpCreateStringForHashValue function.9ÂÃ( €"€°°€€‚ÿdwTopicOffsetJ$ÇÂJÃ& €H€°à€‚ÿTopic-Offset into the TOPIC-File.2 Ã|Ã( €€°°€€‚ÿlParamj>JÃæÃ, (€|€°à€ãl ñ‘‰‚ÿApplication-Defined parameter transfered to HlpEnumTitles1 |ÃÄ& €€„¬°€‚ÿCommentsT.æÃkÄ& €\€ °°€‚ÿThe enumeration is sorted by the HashValuesLÄ·Ä1—í„/·ÄüÄbÈHlpCreateStringForHashValueEkÄüÄ' €<€¨Ø°€‚ÿHlpCreateStringForHashValuef"·ÄbÆD V€E€ °°€€€€€€€€€€‚‚‚ÿvoid HlpCreateStringForHashValue(DWORD HashValue, LPSTR Buffer) Creates a String that has the same Hash-Code and can be used to Transfer hash-code data to Winhelp as a context-String for example in JumpId()-Macros and "-i"-command line Parameter.Defined in: C:/HLPACCES/HASH.C3 üÄ•Æ& €€„¬°€‚ÿParameters5 bÆÊÆ( €€°°€€‚ÿHashValueH"•ÆÇ& €D€°à€‚ÿHash-Code that shall be decoded2 ÊÆDÇ( €€°°€€‚ÿBuffere?Ç©Ç& €~€°à€‚ÿBuffer for the decoded hash-Value. Minimum Size is 20 Bytes.1 DÇÚÇ& €€„¬°€‚ÿCommentsˆb©ÇbÈ& €Ä€ °°€‚ÿThis Function is implemented in a rather slow manner, so do not call it more often than needed.?ÚÇ¡È1AÜ}†0¡ÈÙÈéÌHlpEnumContext8bÈÙÈ' €"€¨Ø°€‚ÿHlpEnumContextAô¡ÈÊM h€é€ °°€€€€€€€€€€€€€‚‚‚ÿBOOL HlpEnumContext(HIFS ifs, CONTEXTENUMPROC fnContextEnumProc, LPARAM lParam) Enumerates all the Context-Id-Hash-Values defined in a Help-File By reading thru all of the CONTEXT internal File.Defined in: C:/HLPACCES/ENUMCON.C5ÙÈOÊ& €€„¬°€‚ÿReturn Value]7ʬÊ& €n€ °°€‚ÿTRUE if enumeration has been performed successfully.3 OÊßÊ& €€„¬°€‚ÿParameters/¬ÊË( €€°°€€‚ÿifsa5ßÊoË, (€j€°à€ãÁž“‰‚ÿHandle to a opened File-System opened by IFSOpen=ˬË( €*€°°€€‚ÿfnContextEnumProcœsoËHÌ) "€æ€°à€€‚ÿCONTEXTENUMPROC Application-Defined Callback-Procedure to be called for every context-Id found in the help file2 ¬ËzÌ( €€°°€€‚ÿlParamoIHÌéÌ& €’€°à€‚ÿAplication-defined parameter to be transfered to the Callback-function@zÌ)Í1†„È1)ÍbÍØHlpEnumKeyWords9éÌbÍ' €$€¨Ø°€‚ÿHlpEnumKeyWords<Ý)ÍžÏ_ Œ€»€ °°€€€€€€€€€€€€€€€€€€€‚‚‚ÿBOOL HlpEnumKeyWords(HIFS ifs, KWENUMPROC fnKWEnumProc, LPCSTR StartKeyWord, LPCSTR KWListName, LPARAM lParam) This Function enumerates the List of Keywords from a Help or Media Viewer Tile. This Function is relatively fast.Note that one Help or Media Viewer file can Have several Keyword lists. Usually in Help Files the Keyword list is named "K" in Media Viewe it's Named "0K", the ALink-List in Windows 95 Files is named "A", others are also possible.I#bÍ & €F€ °°€‚ÿDefined in: C:/HLPACCES/ENUMKW.CžÏ éÌ5žÏA& €€„¬°€‚ÿReturn ValueX2 ™& €d€ °°€‚ÿTRUE if the Function was Successfull FALSE else3 AÌ& €€„¬°€‚ÿParameters/™û( €€°°€€‚ÿifsa5Ì\, (€j€°à€ãÁž“‰‚ÿHandle to a opened File-System opened by IFSOpen8û”( € €°°€€‚ÿfnKWEnumProcŸs\3, (€æ€°àã«’+뀉‚ÿKWENUMPROC Application-Defined Callback-Procedure to be called for every Keyword retrieved. from the help file8”k( € €°°€€‚ÿStartKeyWordH"3³& €D€°à€‚ÿKeyword to start the scan with.6ké( €€°°€€‚ÿKWListNameN(³7& €P€°à€‚ÿName of the Keyword Table (K,0K,A...)2 éi( €€°°€€‚ÿlParamoI7Ø& €’€°à€‚ÿAplication-defined parameter to be transfered to the Callback-function> i1q}†2M HlpEnumTitles7ØM' € €¨Ø°€‚ÿHlpEnumTitles!ÔnM h€©€ °°€€€€€€€€€€€€€‚‚‚ÿBOOL HlpEnumTitles(HIFS ifs, TITLEENUMPROC fnTitleEnumProc, LPARAM lParam) This Function enumerates the List of titles to the application-Given callback Function.Defined in: C:/HLPACCES/ENUMTTL.C5M£& €€„¬°€‚ÿReturn ValueX2nû& €d€ °°€‚ÿTRUE if the Function was Successfull FALSE else3 £.& €€„¬°€‚ÿParameters/û]( €€°°€€‚ÿifsa5.¾, (€j€°à€ãÁž“‰‚ÿHandle to a opened File-System opened by IFSOpen;]ù( €&€°°€€‚ÿfnTitleEnumProc™m¾’, (€Ú€°àã‡v[€‰‚ÿTITLEENUMPROC Application-Defined Callback-Procedure to be called for every topic found in the help file2 ùÄ( €€°°€€‚ÿlParamoI’3& €’€°à€‚ÿAplication-defined parameter to be transfered to the Callback-function1 Äd& €€„¬°€‚ÿComments)ü3 - (€ù€ °°€ã©pÛΉ‚ÿAs the Group-Definition Contained in a Media Viewer 2.0-File is not itself stored in the TTLBTREE internal File, this Function will not emit group strings. The HlpTopicEnumerate Function can be used to retrieve these strings for one or all topics.AdÎ 1ÆÈý3Î   HlpFreeHelpTitle:  ' €&€¨Ø°€‚ÿHlpFreeHelpTitleî§Î ö G \€O€ °°€€€€€€€‚ãƒjZ݉ãy±6‰‚‚ÿvoid HlpFreeHelpTitle(LPHELPFILETITLE tit) Frees a HELPFILETITLE memory-Object allocated by the HlpGetHelpTitle functionDefined in: C:/HLPACCES/PTITLE.C3  ) & €€„¬°€‚ÿParameters/ö X ( €€°°€€‚ÿtitE)  & €>€°à€‚ÿPointer to the memory-ObjectEX â 1€h4â  oHlpGenerateHashValue>  ' €.€¨Ø°€‚ÿHlpGenerateHashValue Ñâ , ; D€£€ °°€€€€€€€‚‚‚ÿlong HlpGenerateHashValue(LPCSTR lpszHashString) Computes a Hash-Value representing a Context-String (#-Footnote) using the same algorithm Windows Help uses internally.Defined in: C:/HLPACCES/HASH.C5 a & €€„¬°€‚ÿReturn Value>, Ÿ & €0€ °°€‚ÿThe 32-Bit Hash Value3 a Ò & €€„¬°€‚ÿParameters:Ÿ  ( €$€°°€€‚ÿlpszHashStringc=Ò o& €z€°à€‚ÿPointer to the context-Striong, for example "IDH_CONTENTS"@ ¯1àý»€5¯è£AHlpGetHelpTitle9oè' €$€¨Ø°€‚ÿHlpGetHelpTitle(ç¯@A P€Ï€ °°€€€€€€€‚ãóãs0‰‚‚ÿLPHELPFILETITLE HlpGetHelpTitle(HIFS ifs) Allocates a memory-Object with Informations read from a Help-Files SYSTEM-File The memory object must be freed with HlpFreeHelpTitle afterwards.Defined in: C:/HLPè@oACCES/PTITLE.C5èQ@& €€„¬°€‚ÿReturn Value’f@ã@, (€Ì€ °°€ãƒjZ݉‚ÿA Pointer to a HELPFILETITLE structure or NULL if the file-System does not contain a SYSTEM-File.3 Q@A& €€„¬°€‚ÿParameters/ã@EA( €€°°€€‚ÿifs^2A£A, (€d€°à€ãÁž“‰‚ÿHandle of the File-System, opened wit IFSOpenAEAäA1œh܃6äAB‰GHlpGetTopicTitle:£AB' €&€¨Ø°€‚ÿHlpGetTopicTitle>äA»C_ Œ€}€ °°€€€€€€€€€€€€€€€€€€€‚‚‚ÿBOOL HlpGetTopicTitle(HIFS ifs, DWORD dwTopicOffset, LPSTR lpszBuffer, UINT uBufferSize, LPDWORD lpdwTopicOffsetStart) Retrieves the Topic Title for a given TopicOffset Value. The TopicOffset does not neccessarily need to point directly to the start of the Topic.Defined in: C:/HLPACCES/GETTTL.C5BðC& €€„¬°€‚ÿReturn ValueX2»CHD& €d€ °°€‚ÿTRUE if the Function was Successfull FALSE else3 ðC{D& €€„¬°€‚ÿParameters/HDªD( €€°°€€‚ÿifsa5{D E, (€j€°à€ãÁž“‰‚ÿHandle to a opened File-System opened by IFSOpen9ªDDE( €"€°°€€‚ÿdwTopicOffsetB E†E& €8€°à€‚ÿTopicOffset to search for6DE¼E( €€°°€€‚ÿlpszBufferuO†E1F& €ž€°à€‚ÿPointer to a Buffer to copy the retrieved Title String or NULL if not needed7¼EhF( €€°°€€‚ÿuBufferSizeE1F­F& €>€°à€‚ÿSize of the Bufffer in Bytes@hFíF( €0€°°€€‚ÿlpdwTopicOffsetStartœv­F‰G& €ì€°à€‚ÿPointer to a DWORD that will contain the TopicOffset value for the begin of the Topic or NULL if this is not needed; íFÄG1»€u†7ÄGøGHLHlpIsTopic4 ‰GøG' €€¨Ø°€‚ÿHlpIsTopicÁuÄG¹IL f€ë€ °°€€€€€€€€€€‚‚ãn´–N‰‚‚‚ÿBOOL HlpIsTopic(HIFS ifs, DWORD HashCode) Tests if the given Hash-Code is in the list of hash-Codes in the given File.Hash-Codes are 32-Bit values generated from Context-Strings (#-Footnotes) by a call to HlpGenerateHashValueThe hash-Codes are to be found in the internal CONTEXT-File which is organized as a simple B-TreeDefined in: C:/HLPACCES/ISTOPIC.C5øGîI& €€„¬°€‚ÿReturn ValueW1¹IEJ& €b€ °°€‚ÿTopicOffset Value, or 0xffffffff if not found.3 îIxJ& €€„¬°€‚ÿParameters/EJ§J( €€°°€€‚ÿifsb6xJ K, (€l€°à€ãÁž“‰‚ÿHandle of an open File-System returned by IFSOpen4 §J=K( €€°°€€‚ÿHashCodesG K°K, (€Ž€°à€ãn´–N‰‚ÿHash-Code for a contextr string, retrieved by HlpGenerateHashValue1 =KáK& €€„¬°€‚ÿSee Alsog/°KHL8 @€^€ °°ãé$¼€‰ãn´–N‰ãÁž“‰‚ÿIsTopic, HlpGenerateHashValue, IFSOpen> áK†L1Å܃è†8†L½LQMHlpTopicClose7HL½L' € €¨Ø°€‚ÿHlpTopicClose”c†LQM1 2€Æ€ °°€€‚ã]Ïœ‘‰‚‚ÿHlpTopicClose(void) Closes a Handle opened by HlpTopicOpenDefined in: C:/HLPACCES/ENUMTOP.CB½L“M1wu†¡9“MÎM'HlpTopicEnumerate;QMÎM' €(€¨Ø°€‚ÿHlpTopicEnumerateÆ“MáNM h€€ °°€€€€€€€€€€€€€‚‚‚ÿBOOL HlpTopicEnumerate(HTOPIC htopic, TOPICENUMPROC fnenum, LPARAM lParam) Enumerates a topics contents to the Application-Defined Callback functionDefined in: C:/HLPACCES/ENUMTOP.C3 ÎMO& €€„¬°€‚ÿParameters2 áNFO( €€°°€€‚ÿhtopicl:O²O2 4€t€°à㟡ÈÙ€‰ã]Ïœ‘‰‚ÿHTOPIC-Handle retrieved from a call to HlpTopicOpen2 FO €( €€°°€€‚ÿfnenum²O €QMzN²O†€, (€œ€°àã²~¦€‰‚ÿTOPICENUMPROC Application-Defined callback-Funtion that will receive Data2 €¸€( €€°°€€‚ÿlParamoI†€'& €’€°à€‚ÿApplication-defined userdata to be transfered to the callback function@¸€g1膼:g ~ˆHlpTopicJumpAPI9' ' €$€¨Ø°€‚ÿHlpTopicJumpAPI%àgŃE X€Á€ °°€€€€€€€€€€‚‚‚‚ÿBOOL HlpTopicJumpAPI(LPCSTR lpszHelpFileName, HTOPIC topic) Tries to launch Windows Help or Media Viewer 2.0 to display the topic accessed with HlpTopicSeek.This is not always possible.The Function determines automatically if the Windows Help File has been created using HC31 or HCW. If The file has been created using HCW, WINHLP32.EXE will be used as viewer application, else WINHELP.EXE will be used to avoid nag Messages caused by 16-Bit dynamic link Libraries.J$ „& €H€ °°€‚ÿDefined in: C:/HLPACCES/JUMPAPI.C5ŃD„& €€„¬°€‚ÿReturn Value佄(…' €{€ °°€‚ÿThe return Value is TRUE when the Function successfully started a Viewer, it is FALSE if either the Media Viewer was not installed or the Windows Help topic has no context Id to jump to.3 D„[…& €€„¬°€‚ÿParameters<(…—…( €(€°°€€‚ÿlpszHelpFileNameS-[…ê…& €Z€°à€‚ÿFilename of the Help or Media Viewer file.1 —…†( €€°°€€‚ÿtopic’`ê…­†2 4€À€°à€ã]Ïœ‘‰ã3Z¡‘‰‚ÿTopic-Handle created by HlpTopicOpen and positioned to the TopicOffset using HlpTopicSeek1 †Þ†& €€„¬°€‚ÿComments w­†~ˆ) €ï€ °°€‚‚‚ÿThe function cannot jump directly into a Windows Help File due to the fact the Windows Help does not support an API to transfer a TopicOffset Value.The Function Therefore Searches the CONTEXT-File for a hash-Code that can be transfered using the undocumented JUMPHASH macro.If there is no such context string entry (# Footnote), the Function is unable to open the topic.= Þ†»ˆ1÷ ¡4;»ˆñˆ[ÂHlpTopicOpen6~ˆñˆ' €€¨Ø°€‚ÿHlpTopicOpenÌ»ˆ‹Q p€™€ °°€€€€€€€€€€‚ã©pÛΉ‚ã-Càr‰‚‚ÿHTOPIC HlpTopicOpen(HIFS ifs, DWORD flags) Opens the internal Help TOPIC-File and reads in and decompresses secondary Tables, like Phrases, Keywords etc. for later use in Enumeration by HlpTopicEnumerateThe returned Handle need to be freed by calling HlpTopicClose.The HlpTopicEnumerate-Function does not stop enumeration until the application-defined Callback-Functions tells it to stop by returning Zero, or the end of the file is reached.J$ñˆX‹& €H€ °°€‚ÿDefined in: C:/HLPACCES/ENUMTOP.C5‹‹& €€„¬°€‚ÿReturn Value¡{X‹.Œ& €ö€ °°€‚ÿThe return Value will be NULL if the File cannot be opened, for example due to the fact that the IFS is not a Help-File.3 ‹aŒ& €€„¬°€‚ÿParameters/.ŒŒ( €€°°€€‚ÿifsl@aŒüŒ, (€€€°à€ãÁž“‰‚ÿHandle of the open internal file System returned by IFSOpen1 Œ-( €€°°€€‚ÿflags™süŒÆ& €æ€°à€‚ÿFlag-Values that declare what data needs to be loaded (Keywords, Context-Strings...), combined with OR-Opertaor:1 -÷% €€°à€‚ÿHTO_FONTS’kƉŽ' €Ö€°‘€€‚ÿLoad FONTS-Table, create font and color Table output on enumeration. The use of this flag is recommended4÷½Ž% €€°à€‚ÿHTO_KEYWORDS澉Ž£( €}€°‘€€‚ÿload Keywords-Table (all!) and enumerate keywords whith the text. loading keywords takes a reasonable amount of time and main memory. Do not set this flag if you do not need the keywords.3½ŽÖ% €€°à€‚ÿHTO_CONTEXT÷Ï£ÙÀ( €Ÿ€°‘€€‚ÿLÖÙÀ~ˆoads CONTEXT-Table (all!) and enumerate Context Ids (#-Footnotes) whith the text. Loading takes a reasonable amount of time and main memory. Do not set this flag if you do not need the Context Id output.1 Ö Á& €€„¬°€‚ÿCommentsQ)ÙÀ[Â( €S€ °°€‚‚ÿHlpOpenTopic is a rather slow operation, so when enumerating multiple Topics it's a good idea to do them all using the same HTOPIC-Handle.This effect is especially important when using HTO_xxxx flags to add keyword and context-String support, because they have to be loaded ALL and COMPLETELY.= Á˜Â1¶¼bƒ<˜ÂÎÂSÆHlpTopicSeek6[ÂÎÂ' €€¨Ø°€‚ÿHlpTopicSeekd˜Â2ÄP n€)€ °°€€€€€€€€€€‚ã©pÛΉãñ°Q‰‚‚ÿvoid HlpTopicSeek(HTOPIC topic, DWORD TopicOffset) Positions the TOPIC-File to the TopicOffset address given as the Parameter. This TopicOffset will be the Address for subsequent calls to HlpTopicEnumerate and HlpTopicJumpAPIDefined in: C:/HLPACCES/PTOPCRD.C3 ÎÂeÄ& €€„¬°€‚ÿParameters1 2Ä–Ä( €€°°€€‚ÿtopicDeÄÚÄ& €<€°à€‚ÿTOPIC-File reference Handle7–ÄÅ( €€°°€€‚ÿTopicOffset]1ÚÄnÅ, (€b€°à€€€‚ÿTopicOffset value retrieved by HlpEnumTiltes1 ÅŸÅ& €€„¬°€‚ÿComments´ŒnÅSÆ( €€ °°€‚‚ÿThis is not a simple seek-operation, as the Topiclink chains have to be maintained.If the given TopicOffset is invalid, a GPF may occur.9ŸÅŒÆ1Ó4T„=ŒÆ¾Æ`ÈIFSClose2 SƾÆ' €€¨Ø°€‚ÿIFSClose⡌Æ ÇA P€C€ °°€€€€€€€‚ãÁž“‰‚‚ÿvoid IFSClose(HIFS ifs) Closes Down .HLP-File and frees assigned Structures. Frees memory-Structures created by IFSOpenDefined in: C:/HLPACCES/IFS.C3 ¾ÆÓÇ& €€„¬°€‚ÿParameters/ ÇÈ( €€°°€€‚ÿifs^2ÓÇ`È, (€d€°à€ãÁž“‰‚ÿHandle of the File-System returned by IFSOpen= ÈÈ1Žbƒ®…>ÈÓÈ0ËIFSCloseFile6`ÈÓÈ' €€¨Ø°€‚ÿIFSCloseFile¼|ÈÉ@ P€ø€ °°€€€€€€€‚ã”ÛlU‰‚‚ÿvoid IFSCloseFile(HIFSFILE ifsfile) Closes an internal File opened by IFSOpenFile.Defined in: C:/HLPACCES/IFS.C3 ÓÈÂÉ& €€„¬°€‚ÿParameters3 ÉõÉ( €€°°€€‚ÿifsfile[/ÂÉPÊ, (€^€°à€ã”ÛlU‰‚ÿThe file-handle as returned by IFSOpenFile1 õÉÊ& €€„¬°€‚ÿComments¯}PÊ0Ë2 4€ú€ °°€€€ã–Ý3ɉ‚ÿAll HIFSFILE File handled must be closed with calls to IFSCloseFile before the assigned HIFS can be closed by IFSCloseBÊrË1T„?rË­ËwIFSEnumerateFiles;0Ë­Ë' €(€¨Ø°€‚ÿIFSEnumerateFilesHúrËõÌN j€õ€ °°€€€€€€€€€€€€€‚‚‚‚ÿvoid IFSEnumerateFiles(HIFS ifs, IFSENUMPROC fnCallback, LPARAM lParam) Enumerates the files contained in the File System.Has about the same meaning as a DIR-Command or a set of findfirst/findnext...Defined in: C:/HLPACCES/IFSENUM.C3 ­Ë(Í& €€„¬°€‚ÿParameters/õÌWÍ( €€°°€€‚ÿifsh<(Í¿Í, (€x€°à€ãÁž“‰‚ÿHandle of the file system opened with a call to IFSOpen6WÍõÍ( €€°°€€‚ÿfnCallback©}¿ÍžÎ, (€ú€°à㡞b€‰‚ÿIFSENUMPROC application-supplied callback-function that will be called for every filename retrieved from the File System2 õÍÐÎ( €€°°€€‚ÿlParamnHžÎ>Ï& €€°à€‚ÿApplication-Defined parameter that will be transfered to the callback1 ÐÎoÏ& €€„¬°€‚ÿCommentsüÔ>Ïw( €©€ °°€‚‚ÿFiles starting with a 0x7c-Character are usually automatically added by the Compiler, while other files oÏw0Ëare usually added by the [Baggage]The enumeration is sorted by the Filename, upper case characters first< oϳ1ž®…@³èUIFSENUMPROC5wè' €€¨Ø°€‚ÿIFSENUMPROC€-³hS t€[€ °°€€€€€€€€€€€€€‚ã­²pÉ‚‚ÿBOOL CALLBACK IFSENUMPROC(LPCSTR lpszFileName, DWORD dwFileOffset, LPARAM lParam) Application-defined callback-Function to be used for calls to IFSEnumerateFiles. IFSEnumerateFiles calls this function for every Filename retrieved from a file SystemDefined in: C:/HLPACCES/HLPACCES.H3 è›& €€„¬°€‚ÿParameters8hÓ( € €°°€€‚ÿlpszFileNameG!›& €B€°à€‚ÿFile name of the internal File8ÓR( € €°°€€‚ÿdwFileOffsetU/§& €^€°à€‚ÿOffset of the file in the physical Help-File2 RÙ( €€°°€€‚ÿlParam|P§U, (€ €°à€ã­²pÉ‚ÿApplication-Defined parameter transfered with the call to IFSEnumerateFiles8Ù1{A¾IFSOpen1 U¾' €€¨Ø°€‚ÿIFSOpenÍ’‹; D€%€ °°€€€€€€€‚‚‚ÿHIFS IFSOpen(LPCSTR HelpFileName) Opens an existing .HLP or .MVB and reads in Header-Level Data structuresDefined in: C:/HLPACCES/IFS.C5¾À& €€„¬°€‚ÿReturn Value¹†‹y3 4€ € °°€ã”ÛlU‰ã–Ý3ɉ‚ÿA Handle for the opened File-System to be used in Subsequent calls to IFSOpenFile. The Handle must be freed by calling IFSClose3 À¬& €€„¬°€‚ÿParameters8yä( € €°°€€‚ÿHelpFileNamee?¬I& €~€°à€‚ÿPointer to a string containing the Filename of the Help-File1 äz& €€„¬°€‚ÿCommentsŽhI& €Ð€ °°€‚ÿThis function may also be used to open other internal File Systems, for example Annotation-Files etc.< zD1BgBDyŠ IFSOpenFile5y' €€¨Ø°€‚ÿIFSOpenFile­bD& K d€Å€ °°€€€€€€€€€€‚‚ãÁž“‰‚‚ÿHIFSFILE IFSOpenFile(HIFS ifs, LPCSTR InternalFileName) Opens an internal File.Opens a file contained in a File-System for reading. The file system has to be opened by a previous call to IFSOpen. More than one internal file can be ópened with calls to IFSOpenFile at the same time using the same HIFS-Handle.Defined in: C:/HLPACCES/IFS.C5y[ & €€„¬°€‚ÿReturn Value¨p&  8 @€à€ °°€ã$B¯Ü‰ãŠõÏJ‰ã²:Ê¡‰‚ÿA Handle for the opened file to be used in subsequent calls to IFSReadFile IFSSeekFile and IFSCloseFile3 [ 6 & €€„¬°€‚ÿParameters/ e ( €€°°€€‚ÿifs\06 Á , (€`€°à€ãÁž“‰‚ÿHandle of the File-System opened by IFSOpen<e ý ( €(€°°€€‚ÿInternalFileName­†Á ª ' € €°à€‚ÿInternal filename of the Baggage-File NOTE: filenames are case-different, so you have to transfer the correct case for the Filename1 ý Û & €€„¬°€‚ÿComments¯}ª Š 2 4€ú€ °°€ã²:Ê¡‰ã–Ý3ɉ‚ÿAll HIFSFILE File handled must be closed with calls to IFSCloseFile before the assigned HIFS can be closed by IFSClose< Û Æ 1Åþ€CÆ û BIFSReadFile5Š û ' €€¨Ø°€‚ÿIFSReadFileÙŒÆ ÔM h€€ °°€€€€€€€€€€€€€‚‚‚ÿlong IFSReadFile(HIFSFILE ifsfile, LPVOID dest, DWORD count) Reads data from an internal File.Defined in: C:/HLPACCES/IFS.C5û  & €€„¬°€‚ÿReturn ValueóÔ0@( €ç€ °°€‚‚ÿNumber of bytes actually read from the internal file. if the Number of bytes that need to be read would exceed the size of the internal file, the number is reduced to the actual file size.The number return 0@Š ed may be -1 to indicate an error.3 c@& €€„¬°€‚ÿParameters3 0@–@( €€°°€€‚ÿifsfilek?c@A, (€~€°à€ã”ÛlU‰‚ÿHandle to the opened internal file returned by IFSOpenFile0–@1A( €€°°€€‚ÿdestCAtA& €:€°à€‚ÿDestination buffer address1 1A¥A( €€°°€€‚ÿcountM'tAòA& €N€°à€‚ÿNumber of Bytes that need to be read1 ¥A#B& €€„¬°€‚ÿCommentsmGòAB& €Ž€ °°€‚ÿThis function can read more than 65535 bytes at a time on 16-Bit OS.< #BÌB1gîƒDÌBCæGIFSSeekFile5BC' €€¨Ø°€‚ÿIFSSeekFileü©ÌBýCS t€S€ °°€€€€€€€€€€€€€‚€€‚‚ÿlong IFSSeekFile(HIFSFILE ifsfile, DWORD pos, int whence) Positions an Internal File for subsequent calls to IFSREadFile.Defined in: C:/HLPACCES/IFS.C5C2D& €€„¬°€‚ÿReturn ValueYýC±D& €²€ °°€‚ÿThe new file-position in the internal file relative to the start of the internal file.3 2DäD& €€„¬°€‚ÿParameters3 ±DE( €€°°€€‚ÿifsfiled8äD{E, (€p€°à€ã”ÛlU‰‚ÿHandle of the internal file returned by IFSOpenFile/EªE( €€°°€€‚ÿpos9{EãE& €&€°à€‚ÿnew file-Postion2 ªEF( €€°°€€‚ÿwhence˜rãE­F& €ä€°à€‚ÿ0-Postion relative to start of file, 1-Postion relative to current position, 2-Position relative to end of file1 FÞF& €€„¬°€‚ÿCommentsà­FæG( €Á€ °°€‚‚ÿThis Function is also useful to retrieve the size of a internal File. by Specifying 2 (SEEK_END) for whence and 0 for posThis function will not detect if the new position is before the start or after the end of the file.BÞF(H1„þ€†E(HcH¶LIsSecondaryWindow;æGcH' €(€¨Ø°€‚ÿIsSecondaryWindowÁ(HhID V€ƒ€ °°€€€€€€€€€€‚‚‚ÿBOOL IsSecondaryWindow(LPCSTR FileName, LPCSTR WindowName) Tests if the given Help-File contains a Definition of the diven Secondary Window-Name.Defined in: C:/HLPACCES/ISSECOND.C5cHI& €€„¬°€‚ÿReturn ValueR,hIïI& €X€ °°€‚ÿIndicates if the Window-Definition exists,IJ% €€°à€‚ÿTRUET-ïIoJ' €Z€°‘€€‚ÿThe file contains such a Window-Definition-JœJ% €€°à€‚ÿFALSEXoJK' €°€°‘€€‚ÿThe file does not exist, is no help file or does not contain such a Window-Definition3 œJNK& €€„¬°€‚ÿParameters4 K‚K( €€°°€€‚ÿFileNameBNKÄK& €8€°à€‚ÿFilename of the Help-File6‚KúK( €€°°€€‚ÿWindowNameEÄK?L& €>€°à€‚ÿname of the secondary Window1 úKpL& €€„¬°€‚ÿCommentsF ?L¶L& €@€ °°€‚ÿLower/Upper case do not care.8pLîL1rîƒ# FîLMI‚IsTopic1 ¶LM' €€¨Ø°€‚ÿIsTopicï«îLND V€W€ °°€€€€€€€€€€‚‚‚ÿBOOL IsTopic(LPCSTR FileName, LPCSTR ContextString) Tests if a given Help file contains a given Context-String (#-Footnote).Defined in: C:/HLPACCES/ISTOPIC.C5MCN& €€„¬°€‚ÿReturn ValueH"N‹N& €D€ °°€‚ÿIndicates if the Context-String,CN·N% €€°à€‚ÿTRUEH!‹NÿN' €B€°‘€€‚ÿThe file contains such a Topic-·N,O% €€°à€‚ÿFALSEsLÿNŸO' €˜€°‘€€‚ÿThe file does not exist, is no help file or does not contain such a topic3 ,OÒO& €€„¬°€‚ÿParameters4 ŸO€( €€°°€€‚ÿFileNÒO€¶LameM'ÒO_€& €N€°à€‚ÿPointer to Filename of the help file9€˜€( €"€°°€€‚ÿContextStringU/_€í€& €^€°à€‚ÿPointer to Context-String, i.e. IDH_CONTENTS1 ˜€& €€„¬°€‚ÿComments¿—í€Ý( €/€ °°€‚‚ÿLower/Upper case do not care.The context-String might either be defined in a popup or topic, in the middle of a Topic or at the start of a topic...1 ‚& €€„¬°€‚ÿSee Also;ÝI‚, (€€ °°ãíâ¼±€‰‚ÿHlpIsTopic; ‚„‚1œ†. G„‚¸‚#ŠKWENUMPROC4 I‚¸‚' €€¨Ø°€‚ÿKWENUMPROC¤H„‚\„\ †€‘€ °°€€€€€€€€€€€€€€€€‚ãóñ­Ê‰‚‚ÿBOOL CALLBACK KWENUMPROC(LPCSTR lpszKeyWord, DWORD dwDataOffset, UINT uDataCount, LPARAM lParam) Application-defined callback-Function to be used for calls to HlpEnumKeyWords. HlpEnumKeyWords calls this function for every Keyword retrieved from a Help or Media Viewer FileDefined in: C:/HLPACCES/HLPACCES.H5¸‚‘„& €€„¬°€‚ÿReturn Value‹e\„…& €Ê€ °°€‚ÿThe Callback-Function cancels the Enumeration by return 0, every other value continues enumeration3 ‘„O…& €€„¬°€‚ÿParameters7…†…( €€°°€€‚ÿlpszKeyWord:O…À…& €(€°à€‚ÿKeyword retrieved8†…ø…( € €°°€€‚ÿdwDataOffsetÖÀ…»†- (€-€°à€ã3Z¡‘‰‚ÿOffset of the Keyword into the Keyword-Datafile (KWDATA, 0KWDATA or AKWDATA...) where the TopicOffsets for use with HlpTopicSeek can be retrieved6ø…ñ†( €€°°€€‚ÿuDataCountT.»†E‡& €\€°à€‚ÿNumber of uses of this Keyword in the File.2 ñ†w‡( €€°°€€‚ÿlParam|PE‡ó‡, (€ €°à€ã­²pÉ‚ÿApplication-Defined parameter transfered with the call to IFSEnumerateFiles1 w‡$ˆ& €€„¬°€‚ÿCommentsÿËó‡#Š4 6€—€ °°€‚ã3Z¡‘‰ãñ°Q‰‚ÿThe Informations retrieved from the KeyWord Binary Tree contain the Keyword strings in an alphabetically sorted list and a Reference to the Keyword Data File (KWDATA, 0KWDATA, AKWDATA...)The KWDATA file contains a list of DWORD-Values for the TopicOffsets linkes to the Topics that used these Keyword. To jump to a Topic using HlpTopicSeek or HlpTopicJumpAPI You first have to open the KWDATA-File, read the Topic-Offset(s) and use these for the Jump.: $ˆ]Š1˜#  H]ŠŠ÷ŽSHGExport3 #ŠŠ' €€¨Ø°€‚ÿSHGExportô§]Š„‹M h€O€ °°€€€€€€€€€€€€€‚‚‚ÿHGLOBAL SHGExport(HWND hwParent, HGLOBAL hDib, HGLOBAL hSegInfo) Performs export of DIB as SHG-Graphic with HotspotsDefined in: C:/HLPACCES/SHGEXPOR.C3 Š·‹& €€„¬°€‚ÿParameters4 „‹ë‹( €€°°€€‚ÿhwParentI#·‹4Œ& €F€°à€‚ÿParent-Window for error Messages0ë‹dŒ( €€°°€€‚ÿhDib3 4Œ—Œ& €€°à€‚ÿDIB-Handle4 dŒËŒ( €€°°€€‚ÿhSegInfo‹e—ŒV& €Ê€°à€‚ÿSegmentation Informations or NULL if none available See File SEG.H for more Informations on format1 ËŒ‡& €€„¬°€‚ÿSee Also:VÁ, (€€ °°ãk£© €‰‚ÿSHGImport5‡ö& €€„¬°€‚ÿReturn CodesVÁLŽD#X€$Óm €€€€‚ÿ€€‚ÿÿÿNULLon Error‚>öÎŽD#X€|Óm €€€€‚ÿ€€‚ÿÿÿ!=NULLGlobal Memory Handle containing the SHG file Data.)LŽ÷Ž& €€ °°€‚ÿ: ÎŽ11™ . ¢„ I1d“ÉSHGImport3 ÷Žd' €€¨Ø°€‚ÿSHGImport©1Áh ž€S€ °°€€€€€€€€€€€€€€€€€€€€€€‚‚‚ÿBOOL SHGImport(HWND hwParent, LPVOID SHGDatadÁ÷Ž, HGLOBAL FAR * lphDib, HMETAFILE FAR* lphMetaFile, LPMETAFILEHEADER lpMetaFileHeader, HGLOBAL FAR * lphSegInfo) Does convert a Memory-Block that signifies an SHG-File into a DIB-Bitmap or Meatfile and Segmentation-Information in SEG-File Format. The segmented Hypergraphics in SEG-File format is documented in file SEG.HDefined in: C:/HLPACCES/SHGIMPOR.C3 d´Á& €€„¬°€‚ÿParameters4 ÁèÁ( €€°°€€‚ÿhwParentI#´Á1Â& €F€°à€‚ÿParent-Window for error Messages3 èÁdÂ( €€°°€€‚ÿSHGData91ÂÂ& €&€°à€‚ÿInput Data Block2 dÂÏÂ( €€°°€€‚ÿlphDibÄ“Ã' €;€°à€‚ÿPointer to a DIB-Handle variable. Should be Initialized by the application to NULL and will Contain a DIB-Handle on return if the SHG-File contained a DIB7ÏÂÊÃ( €€°°€€‚ÿlphMetaFileÊ£“ÔÄ' €G€°à€‚ÿMetafile-Handle for SHG containing WMF Initialized by the application to NULL and will Contain a HMETAFILE-Handle on return if the SHG-File contained a Metafile<ÊÃÐÄ( €(€°°€€‚ÿlpMetaFileHeader®‡”Ä~Å' €€°à€‚ÿWill be filled with Informations on placeable Metafiles This member is used only if the SHG-File has been built based on a Metafile.6ÐÄ´Å( €€°°€€‚ÿlphSegInfo`:~ÅÆ& €t€°à€‚ÿSegmentation Informations in format documented in SEG.H1 ´ÅEÆ& €€„¬°€‚ÿCommentsÇ Æ È' €A€ °°€‚ÿSegmented Hypergraphic file can either be created based on a Bitmap (DIB) or on a Metafile. Both can be converted one into the other with some restrictions. This conversion code is not itself part of Help Access Library and can be found in our DaVinci package. Be aware that many Metafiles are just wrappers around Bitmaps and using PlayMetafile to transfer these into a Bitmap is NOT the best method of handling.1 EÆ=È& €€„¬°€‚ÿSee Also: ÈwÈ, (€€ °°ãÊÚ€‰‚ÿSHGExport5=ȬÈ& €€„¬°€‚ÿReturn Codesf"wÈÉD#X€DÓm €€€€‚ÿ€€‚ÿÿÿTRUEOn Successfull ExecutionX¬ÈjÉD#X€(Óm €€€€‚ÿ€€‚ÿÿÿFALSEOn Errors)É“É& €€ °°€‚ÿ> jÉÑÉ1/ JÑÉÊ'TITLEENUMPROC7“ÉÊ' € €¨Ø°€‚ÿTITLEENUMPROC DÑɨË\ †€‰€ °°€€€€€€€€€€€€€€€€‚ãl ñ‘‰‚‚ÿBOOL CALLBACK TITLEENUMPROC(LPCSTR lpszTitle, LPCSTR lpszDummy, DWORD dwTopicOffset, LPARAM lParam) Type-Definition for an application-supplied callback-Function that will be called each time a Title has been retrieved from the Help-File by the HlpEnumTitles function.Defined in: C:/HLPACCES/HLPACCES.H5ÊÝË& €€„¬°€‚ÿReturn Value½•¨ËšÌ( €+€ °°€‚‚ÿThe Callback-Function cancels the Enumeration by return 0, every other value continues enumerationTRUE if the Function was Successfull FALSE else3 ÝËÍÌ& €€„¬°€‚ÿParameters5 šÌÍ( €€°°€€‚ÿlpszTitleW1ÍÌYÍ& €b€°à€‚ÿTitle-String retrieved from Help-File TTLBTREE5 ÍŽÍ( €€°°€€‚ÿlpszDummy’lYÍ Î& €Ø€°à€‚ÿDummy-String variable might eventually be used for Group names in the future and is currently always NULL9ŽÍYÎ( €"€°°€€‚ÿdwTopicOffsetJ$ ΣÎ& €H€°à€‚ÿTopic-Offset into the TOPIC-File.2 YÎÕÎ( €€°°€€‚ÿlParamj>£Î?Ï, (€|€°à€ãl ñ‘‰‚ÿApplication-Defined parameter transfered to HlpEnumTitles1 ÕÎpÏ& €€„¬°€‚ÿComments«|?Ï'/ ,€ù€ °°€‚‚ã©pÛΉ‚ÿThe number of enumerated Names can be huge, depending on the .MVB - or .HLP File.The enumeratiopÏ'“Én is sorted by the value of TopicOffsetAs the Group-Definition Contained in a Media Viewer 2.0-File is not itself stored in the TTLBTREE internal File, this Function will not receive it. The HlpTopicEnumerate Function can be used to retrieve these strings for one or all topics.> pÏe1 ÿÿÿÿKeœYTOPICENUMPROC7'œ' € €¨Ø°€‚ÿTOPICENUMPROCze\ †€=€ °°€€€€€€€€€€€€€€€€‚€€‚‚ÿBOOL CALLBACK TOPICENUMPROC(LPCSTR lpszTopicText, DWORD dwTopicOffset, TEXTTYPE eTextType, LPARAM lParam) Application-Defined callback-routine called by HlpEnumerateTopic whenever Topic-Text is to be transfered to the Application.Defined in: C:/HLPACCES/HLPACCES.H5œK& €€„¬°€‚ÿReturn Value‹eÖ& €Ê€ °°€‚ÿThe Callback-Function cancels the Enumeration by return 0, every other value continues enumeration3 K & €€„¬°€‚ÿParameters9ÖB( €"€°°€€‚ÿlpszTopicTextY3 ›& €f€°à€‚ÿText to be transfered to the Application program9BÔ( €"€°°€€‚ÿdwTopicOffsetmG›A& €Ž€°à€‚ÿTopicOffset where these Informations have been retrieved (not exact)5 Ôv( €€°°€€‚ÿeTextTypek?Aá, (€~€°àãç‹ç©€‰‚ÿTEXTTYPE type of Text-String transfered to the Application2 v( €€°°€€‚ÿlParamF áY& €@€°à€‚ÿApplication-Defined user Data> —12ÿÿÿÿ½ L—ØÙ HELPFILETITLEAYØ' €4€¨Ø°€‚ÿHELPFILETITLE Structure³—àU x€g€¬°ž’ôY»áE§ kÍ1“õ€‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚‚‚ÿtypedef struct {LPSTR HelpTitle;LPSTR Citation;LPSTR Copyright;BYTE Version;BYTE Revision;WORD Flags;UINT GroupCount;LPSTR FAR * GroupNames;} HELPFILETITLE;¸„ؘ4 6€ € °°€ãy±6‰ãóãs0‰‚‚ÿa Memory-Object allocated and filled by HlpGetHelpTitle and Freed by the HlpFreeHelpTitle.Defined in: C:/HLPACCES/HLPACCES.H0 àÈ& €€„¬°€‚ÿMembers5 ˜ý( €€°°€€‚ÿHelpTitle;È8 & €*€°à€‚ÿTitle of Help-File4 ýl ( €€°°€€‚ÿCitation>8 ª & €0€°à€‚ÿCitation of Help-File5 l ß ( €€°°€€‚ÿCopyright?ª  & €2€°à€‚ÿCopyright of Help-File3 ß Q ( €€°°€€‚ÿVersionC ” & €:€°à€‚ÿVersion # of Help Compiler4 Q È ( €€°°€€‚ÿRevisionG!”  & €B€°à€‚ÿRevision code of Help Compiler1 È @ ( €€°°€€‚ÿFlagsH" ˆ & €D€°à€‚ÿCompression-related Flag-Values6@ ¾ ( €€°°€€‚ÿGroupCount]7ˆ  & €n€°à€‚ÿNumber of Groups defined in an Media Viewer 2.0-File6¾ Q ( €€°°€€‚ÿGroupNamesˆb Ù & €Ä€°à€‚ÿNames and descriptions of the Groups, or NULL of no groups defined or no Media Viewer 2.0 file.5Q  1µÁ ! M < À HIFS.Ù < ' €€¨Ø°€‚ÿHIFS„] À ' €º€ °°€‚‚ÿHandle to an open File-System (.HLP, .MVB or .ANN-File)Defined in: C:/HLPACCES/HLPACCES.H9< ù 1×½ « Nù +ÑHIFSFILE2 À +' €€¨Ø°€‚ÿHIFSFILE¦ù Ñ' €þ€ °°€‚‚ÿHandle to a file inside of a File-System, like a Baggage-File or a included SHG-File etc.Defined in: C:/HLPACCES/HLPACCES.H7+1ã! ÿÿÿÿO8 @HTOPIC0 Ñ8' €€¨Ø°€‚ÿHTOPIC² @3 6€þ€ °°€ã]Ïœ‘‰ã-Càr‰‚‚ÿHandle to an opened TOPIC-File retrieved vom HlpTopicOpen and closed by HlpTopicCloseDefined in: C:/HLPACCES/HLPACCES.H8 @Ñ98E@1ÜÿÿÿÿÿÿÿÿPE@w@.€TEXTTYPE2 @w@' €€¨Ø°€‚ÿTEXTTYPEœ5E@Bg œ€k€¬°ž’ôY»áE§ kÍ1“õ€‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚ƒ‚‚‚ÿenum TEXTTYPE {TOPIC_TEXT,TOPIC_TEXT_CONTROL,TOPIC_TITLE,TOPIC_TITLE_GROUP,TOPIC_MACRO_ENTRY,TOPIC_MACRO_HOTSPOT,TOPIC_RTF_INIT,TOPIC_RTF_TEXT,TOPIC_RTF_EXIT,TOPIC_EWX,TOPIC_BMX,TOPIC_MCI,TOPIC_BUTTON,TOPIC_CONTEXTID,TOPIC_KEYWORD,TOPIC_HOTSPOT_START,TOPIC_HOTSPOT_END};Q(w@dC) €Q€ °°€‚‚‚ÿTopic text is transfered to the Application based on a Application-Defined Callback procdedure. The callback-Function receives a Block of text Data from the Topic.The eTextType enumeration code tells the Application about the Type of Informations retrieved.Defined in: C:/HLPACCES/HLPACCES.H0 B”C& €€„¬°€‚ÿMembers6dCÊC( €€°°€€‚ÿTOPIC_TEXTM'”CD& €N€°à€‚ÿTransfered Data is normal Topic Text>ÊCUD( €,€°°€€‚ÿTOPIC_TEXT_CONTROLsMDÈD& €š€°à€‚ÿTransfered Data is Additional control-code, like Carriage Return, Tab etc.7UDÿD( €€°°€€‚ÿTOPIC_TITLEX2ÈDWE& €d€°à€‚ÿTransfered Data is a Topic Title ('$'-Footnote)=ÿD”E( €*€°°€€‚ÿTOPIC_TITLE_GROUPâ»WEvF' €w€°à€‚ÿTransfered Data is the group-name in case of a Media Viewer 2.0 MVB-File, This does not currently apply to Media View files which are renamed to ".MVB", like Development Network files.=”E³F( €*€°°€€‚ÿTOPIC_MACRO_ENTRYd>vFG& €|€°à€‚ÿTransfered Data is a Macro-String defined in a "!"-Footnote?³FVG( €.€°°€€‚ÿTOPIC_MACRO_HOTSPOToIGÅG& €’€°à€‚ÿTransfered Data is a Macro-String defined in a Hotspot (!-Hidden Text):VGÿG( €$€°°€€‚ÿTOPIC_RTF_INITÛ´ÅGÚH' €i€°à€‚ÿTransfered Data is additional Formatting Information in RTF-Coding. The Data is Initialization Table Data such as colortbl etc. and should be contained in a Help File only once.:ÿGI( €$€°°€€‚ÿTOPIC_RTF_TEXT°‰ÚHÄI' €€°à€‚ÿTransfered Data is additional Formatting Information in RTF-Coding. The Data is part of the Text formatting of Paragraphs, Tabels etc.:IþI( €$€°°€€‚ÿTOPIC_RTF_EXITà¹ÄIÞJ' €s€°à€‚ÿTransfered Data is additional Formatting Information in RTF-Coding. The Data is Deinitialization Data, usually no more than just "}" and should be contained in a Help File only once.5 þIK( €€°°€€‚ÿTOPIC_EWXuOÞJˆK& €ž€°à€‚ÿTransfered Dats is { ewl ...}, { ewc ...}, { ewr ...} embedded Window String5 K½K( €€°°€€‚ÿTOPIC_BMX•oˆKRL& €Þ€°à€‚ÿTransfered Data is { bml ...}, { bmr ...}, { bmc ...} Bitmap String. Filename: Internal File System Filename5 ½K‡L( €€°°€€‚ÿTOPIC_MCIY3RLàL& €f€°à€‚ÿTransfered Data is MCI-Control string { mci ...}8‡LM( € €°°€€‚ÿTOPIC_BUTTONb<àLzM& €x€°à€‚ÿTransfered Data is Windows 95 { button...} string command;MµM( €&€°°€€‚ÿTOPIC_CONTEXTIDU/zM N& €^€°à€‚ÿTransfered Data is a Context-Id (#-Footnote)9µMCN( €"€°°€€‚ÿTOPIC_KEYWORD€Z NÃN& €´€°à€‚ÿTransfered Data is a Keyword-Entry (K-Footnote) Format: Table-Name tab List of Keywords?CNO( €.€°°€€‚ÿTOPIC_HOTSPOT_STARTnHÃNpO& €€°à€‚ÿTransfered Data is Hotspot at the starting-Point of the Jump-Hotspot.=O­O( €*€°°€€‚ÿTOPIC_HOTSPOT_ENDuOpO.€& €ž€°à€‚ÿTransfered Data is Hotspot at the ending-Poi­O.€ @nt of the Jump or Macro-Hotspot.1­Oÿÿÿÿ1ÿÿÿÿÿÿÿÿQÿÿÿÿÿÿÿÿÿÿÿÿçÞÀHelvSymbolCourierTimes New RomanArialMS Sans SerifCourier NewTimes RomanUniversUnivers Medium CondUnivers CondensedLetterGothicZapfDingbatsLucida StarsHelvetica-NarrowCB Univers 67 CondeTimesLetter Gothic MSC Univers 57 CondenMSIconsArial NarrowWingdings$€€€€€€ Á¸ ´‚´‚ÏŠˆí# ¢„ ›‚›‚…튈~‚€ ¶P‚íÜ„}†Èýh»€܃u†è†¡¼4bƒT„®…gþ€îƒ†# .  ¢„ §J€N‚“€ß„Á  ½ ! M‰Å‰ŠÚŠï„M;‚zÜ„}†Èýh»€܃u†è†¡¼4« p‡µ‚bƒT„=ƒ®…gþ€p‡~‚Ïõƒîƒ†}„A…# þ…ø†DŠˆ TR⊶P§J€“€‚µ‚=ƒõƒ}„A…þ…ø†DTìdýu&²ú ìd ýu&ݲ. ú„ ŠˆÁ  € k¢„ §‚½ ! « Á ½ ! « € /&;)i2405FA struct:ÿÿn7nÿÿÿÿAddressAmerica OnlineAOLAPI Binariescallback functionsCIS(CompuServe,ContextId0CONTEXTNUMPROC callback function4DLL-Files8Email<ENUMCON.C@enumeration typesDENUMKW.CHENUMTOP.CLENUMTTL.CPFIDOTfunctionsXGETTOP.CÐGETTTL.CÔGETVAL.CØGlossaryÜHASH.CàHashCodeäHELPFILETITLEèHerd SoftwareìHIFSðHIFSFILEôhlpacc16.dlløhlpacc16.libühlpacc32.dllhlpacc32.libhlpacc3m.libHLPACCES.H hlpaccess.hhlpaccmm.libhlpaccmt.dllhlpaccmt.libhlpalloc.c hlpast16.lib$hlpast32.lib(HlpCreateStringForHashValue,HlpEnumContext0HlpEnumKeyWords4HlpEnumTitles8HlpFreeHelpTitle<HlpGenerateHashValue@HlpGetHelpTitleDHlpGetTopicTitleHHlpIsTopicLHlpTopicClosePHlpTopicEnumerateTHlpTopicJumpAPIXHlpTopicOpen\HlpTopicSeek`HTOPICdIFShIFS.ClIFSClosepIFSCloseFiletIFSENUM.CxIFSEnumerateFiles|IFSENUMPROC callback function€IFSOpen„IFSOpenFileˆIFSReadFileŒIFSSeekFileInternal File System”Internet˜IntroductionœISSECOND.C IsSecondaryWindow¤IsTopic¨istopic.c¬JUMPAPI.C°KWENUMPROC callback function´LDCONTEXT.C¸LDFONTS.C¼LDKW.CÀLIB-FilesÄLicensesÈLZCOMPR.CÌMake filesÐmakefile.bcÔmakefile.mscØmodulesÜOrderingDPARA.CHPHRASES.CLPricesPPTABLE.CTPTITLE.CXPTOPCRD.C\seg.h`SHGEXPOR.CdSHGExporthSHGIMPOR.Clshgimpor.hpSHGImporttstatic linkingxstructures|SWREG€TEXTTYPE„thlp.cnvˆTITLEENUMPROC callback functionŒTOPICENUMPROC callback functionTopicOffset”typedefs˜types¤FSFILE A0621 types A06AB typedefs A06AB HTOPIC/&;)LzÿÿRlRÿÿÿÿContentsN‚GlossaryŠˆLibrary binariesÅÏAPI-Introduction Licenses and ordering$ƒContentsï„About Autoduck†Contents: Objects and Interfaces †Contents: Object Methods1†Contents: Object PropertiesE†Contents: Object EventsU†Contents: Classes and Class Membersq†Contents: FunctionsContents: Messages›Contents: Structures and EnumsÏContents: OverviewsÛContents: ModulesContents: ConstantsENUMCON.C¶ENUMKW.CPENUMTOP.CENUMTTL.C§GETTOP.CJGETTTL.C€GETVAL.C“€HASH.CHLPACCES.H‚hlpalloc.cµ‚IFS.C=ƒIFSENUM.CõƒISSECOND.C}„istopic.cA…JUMPAPI.Cþ…LDCONTEXT.Cø†LDFONTS.CDLDKW.CTLZCOMPR.CìPARA.CdPHRASES.CýPTABLE.CuPTITLE.C&PTOPCRD.C²SHGEXPOR.CúSHGIMPOR.CíCONTEXTNUMPROCÜHlpCreateStringForHashValue„HlpEnumContext}†HlpEnumKeyWordsÈHlpEnumTitlesHlpFreeHelpTitleýHlpGenerateHashValuehHlpGetHelpTitle»€HlpGetTopicTitle܃HlpIsTopicu†HlpTopicCloseè†HlpTopicEnumerate¡HlpTopicJumpAPI¼HlpTopicOpen4HlpTopicSeekbƒIFSCloseT„IFSCloseFile®…IFSEnumerateFilesIFSENUMPROCIFSOpenIFSOpenFilegIFSReadFileþ€IFSSeekFileîƒIsSecondaryWindow†IsTopic# KWENUMPROC. SHGExport SHGImport¢„ TITLEENUMPROC TOPICENUMPROCÁ HELPFILETITLE½ HIFS! HIFSFILE« HTOPIC€ TEXTTYPE /&;)L4ÿÿRhRÿÿÿÿਆT䜲ŠU†]Ïœ‘¼3Z¡‘4l ñ‘ÈÁž“fzå—îƒO$äœø†k£©  ²:Ê¡T„Kvf§ †wj§1†ç‹ç©€ ì7‚¬‚‘¼ž­õƒúN–±„í⼱܃>€î±7q§µ»€¥P ·í·Rý¸$ƒ?Þ²Á›yg_í²pî…–Ý3Ébƒvz[ɧqnaÉJ궲ɀÙËÉýA†\ÊÅóñ­Ê}†©pÛÎè†ÑîÕ“€Ÿ¡ÈÙ« $B¯ÜgƒjZÝÁ ¶ÿ«Ý=ƒÐà2ßÏ Œ-äSp¤çPNdªç«’+ë# y°Íïï„dò†ˆ‰áóÏWùø&ûùDo~üú.Ö½ ?j2­ÍÚ3µ‚é$¼†º²þ þ…+3q†¡žb‡v[¢„ #{uwÄ}A…‡ 죽¨E†²~¦ ãÿ!Üóãs0y±6hÂvG ŠõÏJþ€n´–Nýñ°Q¡”ÛlU÷Ä[ÙNn]Ût³gN‚î 1hø˜æk}„é'Dod-Càru†iî¿y²Ê 8{! úŠˆÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿXOlpÀÀÔRV,žÇå¬Íç®Ðé±Ïè»ÕëÄÚìÑßîÍàïÍáðÑáïÒâðéïöæðöÿýþÿÿÿÿÿÿÿÿÿÿÿlÿƒÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿ$ÿ>„ÿÿDÿ\ÿ‚ÿÿ>„ÿÿDÿ\ÿ‚ÿÿ>„ÿÿ(ÿ>„ÿÿ(ÿ>„ÿÿ(ÿ>„ÿÿD ÿ ÿÿÿÿÿ ÿ‚ÿ ÿ  ÿ‚ÿ‚ÿÿÿÿÿ ÿÿ‚ÿÿÿ‚ÿÿ>„ÿÿEÿ‚ÿÿ‚ÿÿÿÿ‚ÿÿ‚ÿ‚ÿÿ‚ÿ ÿ‚ÿ‚ÿ‚ÿÿÿ‚ÿÿÿƒÿÿÿ‚ÿÿÿÿÿ‚ÿÿÿ>„ÿÿEÿÿÿ‚ÿÿÿÿ‚ÿÿ‚ÿ‚ÿÿ‚ÿÿ ÿ„ÿÿÿ‚ÿÿÿ‚ÿÿÿƒÿÿ‚ÿÿÿÿÿ‚ÿÿÿ>„ÿÿFÿÿ‚ÿÿ‚ÿÿÿ‚ÿ‚ÿ‚ÿÿÿ ÿÿÿ‚ÿÿÿÿ‚ÿÿÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿFÿÿ‚ÿÿ‚ÿÿÿÿÿ‚ÿ‚ÿ‚ÿÿÿÿ‚ÿÿÿÿÿÿ‚ÿÿÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿKÿ‚ÿ‚ÿ‚ÿÿÿÿÿ‚ÿ‚ÿ‚ÿÿÿÿ‚ÿÿÿÿÿÿ‚ÿÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿJÿÿ‚ÿÿÿÿÿ‚ ÿ‚ÿ ÿ ÿÿ‚ÿÿÿÿÿ‚ÿ‚ÿ ÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿI†ÿÿÿ‚ÿÿÿÿÿÿ‚ÿÿÿ ÿÿ‚ÿÿÿÿÿ‚ÿ‚ÿÿÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿDÿÿÿ‚ÿÿÿÿÿ‚ÿÿ‚ÿ‚ÿÿÿ ÿÿ‚ÿÿÿÿÿ‚ÿ‚ÿÿÿÿ‚ÿ‚ÿÿ‚ÿÿ‚ÿ>„ÿÿ?ÿ„ÿ‚ÿÿ‚ÿÿƒÿÿÿÿƒÿÿ‚ÿ‚ÿÿÿ ÿÿÿÿÿƒÿÿÿÿ‚ÿÿƒÿÿ‚ÿÿ‚ÿ‚ÿÿÿÿÿ>„ÿÿ9ÿ‚ÿ‚ÿÿƒÿÿÿƒÿÿÿÿ„ÿÿÿ‚ÿƒÿÿÿÿ ÿ ÿÿƒÿÿÿÿ‚ÿÿƒÿÿÿ‚ÿÿ‚ÿ‚ÿ ÿÿÿ>„ÿÿ4 ÿ‚ ÿÿ‚ ÿÿÿ‚ ÿ‚ÿÿ ÿÿÿÿ ÿÿÿ‚ÿ ÿ‚ÿÿ‚ÿ‚ÿÿÿÿ>„ÿÿ/ÿ‚ÿÿÿ@ÿÿÿ(ÿ ÿd„ÿÿ)ÿƒÿÿÿ@ÿÿ(ÿ ÿd„ÿÿ$…ÿÿÿÿÿ@ÿÿÿÿ ÿd„ÿÿ ‚ÿÿÿÿ@ÿÿÿ ÿ ÿd„ÿÿ$‚ÿÿJÿ0ÿÿ ÿd„ÿÿ(ƒÿÿJÿ1ÿÿ ÿd„ÿÿ)ÿÿJÿAÿ ÿd„ÿÿ*‚ÿÿÿJÿÿ=ÿ ÿd„ÿÿ'‚ÿÿÿJÿÿ=ÿ ÿd„ÿÿ&ÿ‚ÿÿ‚ÿHÿ‚ÿ<ÿ ÿd„ÿÿ#‚  ÿÿƒÿÿG ÿ<ÿ ÿd„ÿÿ!‚&ÿ ÿ ÿd„ÿÿ‚3„ÿÿ5„ÿÿ‚6„ÿÿ‚8„ÿÿ:„ÿÿ‚mÿR ÿb„ÿÿ‚ÿÿÿÿÿÿ@„ÿÿÿÿÿÿÿÿ@„ÿÿ ‚ÿÿ ÿÿÿÿ@„ÿÿ ‚ÿÿ#ÿÿÿ‚ÿ@„ÿÿ‚ÿÿ&ÿÿÿÿ@„ÿÿ ÿÿ(ÿÿ4ÿ@„ÿÿ‚!ÿÿ*ÿÿ5ÿ@„ÿÿ#ÿÿ,ÿ ÿ6ÿ@„ÿÿ%ÿÿ -ÿ ÿ6ÿ@„ÿÿDÿÿ .ÿ ÿ6ÿ@„ÿÿDÿÿ 0ÿ ÿ6ÿ@„ÿÿDÿÿ 0ÿ ÿ6ÿ@„ÿÿDÿÿ 2ÿ ÿ7ÿ@„ÿÿDÿÿ ÿÿ ÿÿÿ@„ÿÿDÿÿ ÿÿ ÿÿÿ@„ÿÿDÿÿ ÿÿ ÿÿÿ@„ÿÿDÿÿ ÿÿ ÿÿÿ@„ÿÿDÿÿ ÿÿ ÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿÿÿÿÿ@„ÿÿDÿÿ ÿ%ÿÿÿ@„ÿÿDÿÿ ÿ%ÿÿÿ@„ÿÿDÿÿ ÿ%ÿÿÿ@„ÿÿDÿÿ ÿ%ÿÿÿ@„ÿÿDÿÿ ÿ%ÿÿÿ@„ÿÿDÿÿ 6ÿÿÿÿ@„ÿÿDÿÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ 6ÿÿÿÿ@„ÿÿD:ÿ ÿÿÿÿÿ@„ÿÿD:ÿ ÿÿ!ÿ ÿÿ@„ÿÿD:ÿ ÿÿ'ÿÿÿ@„ÿÿD:ÿ ÿÿ'ÿÿÿ@„ÿÿD:ÿ ÿÿ'ÿÿÿ@„ÿÿD:ÿ ÿÿ'ÿÿÿ@„ÿÿD:ÿ ÿÿ'ÿÿÿ@„ÿÿD:ÿ ÿÿ 'ÿÿÿ@„ÿÿD:ÿ ÿÿ 'ÿÿÿ@„ÿÿD:ÿ ÿÿ 'ÿÿÿ@„ÿÿD:ÿ ÿÿ 'ÿÿÿ@„ÿÿDÿÿ ÿÿ 'ÿÿÿ@„ÿÿDÿÿ ÿÿ 'ÿÿÿ@„ÿÿDÿÿ ÿÿ 'ÿÿÿ@„ÿÿDÿÿ ÿ‚ÿ 'ÿÿÿ@„ÿÿDÿÿ 1ÿ 'ÿ7ÿ@„ÿÿDÿÿ 1ÿ 'ÿ7ÿ@„ÿÿDÿÿ /ÿ 'ÿ6ÿ@„ÿÿDÿÿ /ÿ 'ÿ6ÿ@„ÿÿDÿÿ -ÿ 'ÿ6ÿ@„ÿÿDÿÿ+ÿÿ ÿ6ÿ@„ÿÿDÿÿ)ÿÿ ÿ5ÿ@„ÿÿDÿÿ'ÿÿ‚ ÿ5ÿ@„ÿÿDÿÿ%ÿÿ ÿ4ÿ@„ÿÿDÿÿ#ÿÿ ÿ ÿÿ@„ÿÿDÿÿÿÿ ÿ ÿ‚ÿ@„ÿÿDÿÿÿÿÿ ÿÿ@„ÿÿDÿÿÿÿÿ ÿÿ@„ÿÿDÿÿÿ@ÿ ÿ ÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿDÿÿÿ@„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿj„ÿÿjƒÿÿÿlÿ‚