• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 1503
  • Last Modified:

HtmlHelp(): how to use HH_HELP_CONTEXT and HH_KEYWORD_LOOKUP

I am experiencing several problems using the function  HtmlHelp() in my MFC application.

I overridden WinHelp() in my mainframe class and commented out the call to WinHelp().  Now, I try to use HtmlHelp() instead.

The following call shows the default topic as expected:

HWND hwnd=HtmlHelp(pWnd->m_hWnd, "c:\\MyHelp\\MyHelp.chm", HH_DISPLAY_TOPIC, NULL);

I can even display a specific HTM file:

HWND hwnd=HtmlHelp(pWnd->m_hWnd, "c:\\MyHelp\\MyHelp.chm", HH_DISPLAY_TOPIC, (DWORD)((LPCTSTR)"MyTopic.htm"));

But, I didin't manage to reach a specific topic using an ID:

HWND hwnd=HtmlHelp(pWnd->m_hWnd, "c:\\MyHelp\\MyHelp.chm", HH_HELP_CONTEXT, HID_BASE_RESOURCE+ID_FILE_OPEN);

I get an error message: "HH_HELP_CONTEXT called without a [MAP] section".  But I have a [MAP] section in my help project file.

I have the same problem with HH_KEYWORD_LOOKUP.  I read the documentation many times but, without a sample I cannot understand how it should work.

Any (html)help will greatly appreciated! ;-)

0
blarivie
Asked:
blarivie
  • 2
  • 2
1 Solution
 
chensuCommented:
Hope these help.

HOWTO: Prepare HTML Help Files for Context-Sensitive Help
http://support.microsoft.com/support/kb/articles/q189/4/53.asp

HOWTO: Create Context-Sensitive HTML Help in an MFC Application
http://support.microsoft.com/support/kb/articles/q191/1/18.asp

BUG: Editing MAP or ALIAS in the HTML Help Workshop Causes Error
http://support.microsoft.com/support/kb/articles/Q188/4/44.asp
0
 
blarivieAuthor Commented:
Thank you very much! You resolved half of my problem.  Now, I understand how [MAP] and [ALIAS] work so I can use HH_HELP_CONTEXT.

But, I still cannot use HH_KEYWORD_LOOKUP.

It works when I test it with HTML Help Workshop (Menu Test/Keyword Lookup...).  But I don't know how to do it programmatically.  I tried the following without success:

HWND hwnd=HtmlHelp(pWnd->m_hWnd, NULL, HH_KEYWORD_LOOKUP, (DWORD)((LPCTSTR)"MyString"));

0
 
chensuCommented:
I don't know what exactly the problem is. You may try specifying a .HHK file.

For the 4th parameter, you'd better use the following since you use LPCTSTR.

(DWORD)((LPCTSTR)_T("MyString"))
0
 
blarivieAuthor Commented:
Thank you chensu for your help.  I tried all kind of things but I still cannot use HH_KEYWORD_LOOKUP.  I didn't find anything on this subject.  It's probably too early to use Html help.  
0

Featured Post

New feature and membership benefit!

New feature! Upgrade and increase expert visibility of your issues with Priority Questions.

  • 2
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now