• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Predefining Map IDs Prior to Help Creation?

Explorer ,
Jul 27, 2007 Jul 27, 2007

Copy link to clipboard

Copied

We're looking to streamline our help integration process for in-program, window-level help. The way we would like to do this is to have the developers assign Map IDs in the code right from the outset in the development process, before the help is written. However, doing so would mean that any map file I get from them will not include topic titles. Is this a problem?

(The advantage is that by using this system I could go through the application screen by screen during the testing phase and determine which screens do not have associated help topics.)

If we can in fact implement this system, what does the developer need to give me? What should the file content look like?

Views

447

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

Engaged , Aug 03, 2007 Aug 03, 2007
That is a great message because it tells you that

a) Your developer is calling HH_HELP_CONTEXT (The right call for map numbers)
b) The map number is 50001, and
c) Your help file, "MainHelp.chm," does not contain a topic linked to map number 50001.

What you should do from here is to assign a topic to that map number. The Edit MapIDs option in your project should allow you to do this. Then, after you compile, the application should fire that topic.

Why aren't you getting the same info from RH B...

Votes

Translate

Translate
Engaged ,
Jul 28, 2007 Jul 28, 2007

Copy link to clipboard

Copied

No, this is not a problem and, in fact, HTML Help was designed to do this. The developer will provide you with an .hh file (or just with an .h suffix). This file will be a text file with the structure #define IDH_HELPID xxxxxx, where xxxxxxx is the map number and IDH_HELPID is some (hopefully helpful) help ID.

As the help author you do need to connect these IDs to your topic file names. This is done in the alias file (.ali), which is also a text file with the format IDH_HELPID=Topicfilename.htm. You can certainly test the app without actually having it hooked up to your topics. You can do this with a tool such as RoboHelp's BugHunter. Running along side the app, it will report the map number requested everytime you press F1 or click a help button in your application.

You could also create the alias file in advance of creating the topics. Of course, you would get a "Page cannot be displayed" error if the topic had not yet been created.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jul 30, 2007 Jul 30, 2007

Copy link to clipboard

Copied

Thanks, John. I think that ought to about do it.

I've got it mostly working, but can't seem to get BugHunter to give me any feedback whatsoever. I think this may be because the developer has already integrated the help with the application (?), but I'm not sure. I don't understand why BugHunter isn't reporting the Map IDs of the topics the application is calling, and it doesn't seem to be outputting any errors, either.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
Jul 30, 2007 Jul 30, 2007

Copy link to clipboard

Copied

I have usually not had any problems with BugHunter. But my usual caveat applies here - I use RH v. 2000. Another tool you can use is Microsoft's Help Workshop. It will also intercept help messages from applications.

Before trying anything else, you have your application and BugHunter running simultaneously? And do you have your RH project open? Do you know what command the developer is using to call help? You should get something with the following format from BugHunter:

CHM File Name: C:\PROGRAM FILES\DSQUARED\LATEST BETA\delight.chm
Topic: Welcome.htm
Command: HH_HELP_CONTEXT
Map Number: 0
Result: Topic launched.

I have, on occasion, had neither BugHunter nor Help Workshop respond and the reaon has something to do with the fact that I run numerous, unregistered to Windows, beta and release versions (all with the same filename) of our software on one computer. I have always been able to fix it if I delete the hh.dat file. Something in that file (which seems to have a highly secretive format) interferes with help calls if you have changed directories of your app without letting Windows know.

John

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Aug 03, 2007 Aug 03, 2007

Copy link to clipboard

Copied

Hi, John,

FWIW, I was running the application and RH simultaneously with the project open. I don't know how exactly the developer is calling the help, although he says he has set the path to the .chm file and set the help contextid to the map ID from the help project on each form. I don't quite know what he means by "form" in that context. This is Visual Basic he's using.

I can't find any file as "hh.dat" on my system, but I've got the HTML Help Workshop giving me messages that look like

HH_HELP_CONTEXT: Cannot find 50001 in mk:@MSITStore:C:\Program Files\[Application]\Help\MainHelp.chm

I'm waiting for the developer to tell me if this is useful to him or not. :)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Engaged ,
Aug 03, 2007 Aug 03, 2007

Copy link to clipboard

Copied

That is a great message because it tells you that

a) Your developer is calling HH_HELP_CONTEXT (The right call for map numbers)
b) The map number is 50001, and
c) Your help file, "MainHelp.chm," does not contain a topic linked to map number 50001.

What you should do from here is to assign a topic to that map number. The Edit MapIDs option in your project should allow you to do this. Then, after you compile, the application should fire that topic.

Why aren't you getting the same info from RH BugHunter? I don't know. I have only used the newer versions of RH briefly as trial versions.

John

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Aug 03, 2007 Aug 03, 2007

Copy link to clipboard

Copied

LATEST
Thanks, John. I had a talk with the developer and everything's working just fine now. Well, except BugHunter, and he's pretty sure the reason it's not working has something to do with the calls he's using to invoke the help.

Thanks so much for your assistance.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Resources
RoboHelp Documentation
Download Adobe RoboHelp