Hi
I want to add an window HELP in the menu iten (in my program),
but i dont know how to build the Help and what procedure to call
Can anyone help me ? Is there a simply example ?
Thanks
Rui
hi
try this for open help files!
.data
szPathtoHelp db "\masm32\help\masm32.hlp",0
invoke WinHelp, NULL,addr szPathtoHelp, HELP_CONTENTS, 0
for .chm files use ShellExecute
greets
To create a .chm help file use HTML Help Workshop (http://www.microsoft.com/downloads/details.aspx?familyid=00535334-c8a6-452f-9aa0-d597d16580cc&displaylang=en).
Thanks ragdog and Greg,
Ok but how do i write a file like masm32.hlp.
Whats the format of this type of file
Rui
Here is a list and helps for making
Free Help Authoring, Manual and Documentation Writing Tools.
http://www.thefreecountry.com/programming/helpauthoring.shtml
or make your Help text in RTF-Format and use RTF2HLP
http://www.ariacom.com/brRTF2HLP.asp
or use WinHelp Master 1.6
I think .chm help files is better then can you all building in html and compile this to .chm!!
greets, :U
ragdog
RuiLoureiro,
WinHelp (.hlp) is the older format. Notice the masm32 v10 help files have been converted to .chm format.
I use Help & Manual v.4.5
http://www.helpandmanual.com/
Rui,
Greg is right here, later Windows versions no longer support the old Winhelp format so you need to construct the newer CHM type of help file. My suggestion is to download KOMPOSER as a free HTML page composer, create your help file first as HTML then build it into a CHM help file with the HTML workshop from Microsoft. Be warned that the HTML workshop is a bad mannered old pig to use but the compiler works fine.
I upgraded to Help & Manual v.5.0.3.549
New version is awesome!
Just try it.
Hi all
Thank you all
Thank you Hutch for your suggestion.
I have one problem Hutch: i hate HTML. So i dont go to make anything in HTML
So i need to think how to do a simple help
Rui
Quote from: RuiLoureiro on August 03, 2008, 04:11:10 PM
I have one problem Hutch: i hate HTML. So i dont go to make anything in HTML
So i need to think how to do a simple help
Use RTF2HLP (http://www.ariacom.com/brRTF2HLP.asp), see RagDog's post above. Easy, free and straightforward, and the MS bloat factor is acceptable. If you don't need bookmarks and fancy graphics, you can use WordPad instead of Word to create the RTF, and reduce file size by 30%.
Quote from: jj2007 on August 04, 2008, 08:34:03 AM
Use RTF2HLP, see RagDog's post above.
'
Thanks jj2007. I will go to try it
EDIT: i used RFT2HLP with Test file and
it works fine in my program.
Thank you very much jj2007 and ragdog, Greg, Hutch and lingo
Rui
Rui,
The problem wih Winhelp is it has been removed from Vista and is no longer supported where CHM is in fact no big del to do if you use a HTML composer. I suggested KOMPOSER as its much like a word processor to use but can do proper HTML as results. For Winhelp I own the 1992 version of Microsoft Word that produces correct RTF and have a complete set of macros for automating winhelp files but the new ones are easy enough to build once you get the idea of how they work.
When I open hlhelp.chm, and click on "Overview", then press Control F, nothing happens.
Right-clicking does not help, either. But as an experienced client of Microsoft, I never give up, and indeed, clicking into the right pane, then pressing Control F opens a find box. So I type
function
into "Find what", and get the message "Finished searching the document". No results in the whole document ::)
Unless there are some well-hidden options for super-power-users, for me chm is a clear case of banana marketing: let the product mature at the customer's place.
By the way: Does it already work properly on Vista? I only have XP...
JJ,
I find search on CHM files useless so I don't waste my time trying to create it. I build the index and contents so they are easy enough to read and don't bother with the rest. Help with search and other facilities could be done much better but I am not going to waste the time writing the help engine to do it.
Hutch,
I am learning windows.
I have not a lot of experince to do the best at the first trial
So iam going to making things and learning.
In this case, for now, .Hlp format is good for me.
One day, may be, i will change to .chm format
In all cases i found a good tool in HTML Help Workshop: HTML Help Image Editor
By the way: how do i stick an image here ? I dont know how to show it here
Thanks
Rui
Quote from: hutch-- on August 04, 2008, 01:45:07 PM
JJ,
I find search on CHM files useless so I don't waste my time trying to create it. I build the index and contents so they are easy enough to read and don't bother with the rest. Help with search and other facilities could be done much better but I am not going to waste the time writing the help engine to do it.
Hutch-
I just found out my earlier complaints about html searching were incorrect. The search takes wildcards, so while searching for multi returns nothing, searching for multi* gives me what I wanted. Enabling search is a simple click on on option. I'm sure most of us would really appreciate having the capability.
Rui- Sorry, I don't mean to hijack your topic.
Imagine trying to use WIN32.hlp without a Search option ...
Rui, look at Ewayne Wagner's webpage, he has an editor that builds HLP files easily and it includes the assembly sources.
-- Paul
Quote from: hutch-- on August 04, 2008, 01:45:07 PM
JJ,
I find search on CHM files useless so I don't waste my time trying to create it.
Oops, I wanted to hit Bill G. and Hutch got it over the head! I am soooo sorry, Sir :green2
jj2007,
everything is going well.
But how i close the help window when i close the program if the help window is opened.
Thanks
Rui
Quote from: RuiLoureiro on August 04, 2008, 05:18:27 PM
jj2007,
everything is going well.
But how i close the help window when i close the program if the help window is opened.
Thanks
Rui
Get a handle to the help window with FindWindow etc., then send or post a WM_CLOSE message to this window on WM_CLOSE in your main app...
Quote from: jj2007 on August 04, 2008, 05:23:29 PM
Get a handle to the help window with FindWindow etc., then send or post a WM_CLOSE message to this window on WM_CLOSE in your main app...
jj2007,
FindWindow returns NULL.
.data
_WinHelp db 'Test.hlp',0 <--- Window Help NAME
;-------------------------------
_ClassName db "WinClass",0 <--- Main window class name
;.......................................................................
invoke FindWindow, offset _ClassName, offset _WinHelp
cmp eax, NULL
je @F
It doesnt Find the Help Window and it is opened. Whats going wrong ? Class Name ?
Rui
Quote from: RuiLoureiro on August 04, 2008, 06:22:29 PM
It doesnt Find the Help Window and it is opened. Whats going wrong ? Class Name ?
Rui
invoke FindWindowEx, 0, 0, chr$("MS_WINDOC"), chr$("Test.hlp")
Quote from: jj2007 on August 04, 2008, 07:06:46 PM
invoke FindWindowEx, 0, 0, chr$("MS_WINDOC"), chr$("Test.hlp")
jj2007,
Thank you
But
doesnt work. Class name isnt MS_WINDOC
Rui
Rui,
Try changing it to WinClass
invoke FindWindowEx, 0, 0, chr$("WinClass"), chr$("Test.hlp")
Whether it will work or not I don't know as I do not have your sources, but one thing is certain, you need to address the classname that 'you' gave it.
-- Paul
Quote from: RuiLoureiro on August 04, 2008, 09:29:25 PM
But doesnt work. Class name isnt MS_WINDOC
Quote from: PBrennick on August 04, 2008, 10:05:04 PM
Whether it will work or not I don't know as I do not have your sources, but one thing is certain, you need to address the classname that 'you' gave it.
Rui launches a .hlp file with an external app (winhelp), and therefore has no influence on its classname. On my XP SP2 machine, WinID finds MS_WINDOC as the classname.
I found the solution:
- To OPEN the Help Window
.data
_WinHelp db 'Test.hlp',0 <--- Window Help NAME
;.....................................
.code
invoke WinHelp, NULL, addr _WinHelp, HELP_CONTENTS, 0
- To CLOSE the Help Window
.code
invoke WinHelp, NULL, addr _WinHelp,HELP_QUIT, 0
Thank you Paul and jj2007 for your help
*** By the way: how do i stick an image here ? ***
Rui
Quoteinvoke WinHelp, NULL, addr _WinHelp, HELP_CONTENTS, 0
Thanks, Rou, I learnt something new :U
By the way: Did you try finding the classname with WinId (http://www.dennisbabkin.com/php/download.php?what=WinID)? For me, it's MS_WINDOC on all machines, but they are all XP, so it might differ on another OS.
jj2007,
With WinID it is MS_WINHELP.
WinID is a good tool.
Thanks :U
Rui
MAML: http://en.wikipedia.org/wiki/Microsoft_Assistance_Markup_Language
... Just in case you are looking for something a little more cutting edge. Personally, I stick with CHM.
Quotelater Windows versions no longer support the old Winhelp format so
i had the unpleasant experience of none of my .hlp files opening. - I am using winxp pro SP2. all these same ,hlp files used to open before on my system. don't know if it was some microsoft update i installed that did this.. what a pain : /
Anyone know how i can rectify this... ?
when i reinstall winxp.. am gonna keep it that way & not install any kind of updates. the sp2 is pretty stable that way anyhow.
Try deleting the <filename.GID> files next to the .hlp files. Sometimes these index files can become corrupted, and it prevents help from loading. The next time the help file is used, they are rebuilt automatically.
i tried it.. didn't help :tdown
the help contents dialogue comes up properly.. but when i actually try & & click a topic that will start a window.. i get a msg saying that the .HLP file is either corrupted or not a valid help file
thx.
-