Skip to main content
Inspiring
February 15, 2018
Question

context sensitive help, map-id, .ali file, re-map

  • February 15, 2018
  • 1 reply
  • 1504 views

I'm in trouble with a Microsoft HTML Help project which used to work but by someaction I did - and I don't know which it was - the MAP-Ids resp. the linkage bewteen the information in the .ali-file and the map-ids got lost.

What is the mechanism to make the map IDs known to a project? (a merged project in this case).

I have two mapfiles in my project :

all_mapids_sorted.h

BSSCDefault.h

all_mapids_sorted.h contains all map ids in the form:

#define Item 18269

(it's an ANSI encoded file containing Umlauts - I'm not sure whether I had to change this to UTF-8 but it used to work and I didn't change anything in that area).

My .ali file has the name

Merged_project.ali

and is a catenation of all .ali files in the subprojects

It contains for this Map ID:

<alias name="Item" link="Redirect.1.htm#its:SUBPROJECT.chm::/path\to\Item_explained.htm" >

When I compare the working merged CHM with the non working then I can see that all its:links are missing in the non-working.

By which mechanism do I make known the .ali and map-information to the project (merged~)?

--

Christoph

(maybe I have asked this before but forgot - IT WAS A DIFFERENT CAUSE THEN. MAP IDs don't get recognized (Umlaut problem?) )

P.S.: using HTML Help Studio I can see that the working CHM has 48KB of strings containing the content of the .ali file while the defunct CHM doen's contain this information.

This topic has been closed for replies.

1 reply

KrischuAuthor
Inspiring
February 15, 2018

General question: the files (*.h, *.apj, *.ali), do the have to be utf-8 encoded and have a respective BOM? Or do they have to be ANSI?

I have a problem that the rh compiler beefs about a map definition:

The following map definition has an invalid context ID: #define Winkel_80?60208

which is actually

#define Winkel_80° 60208

Peter Grainge
Community Expert
Community Expert
February 15, 2018

Don't know but suggest you create a new project and see how it is set out there.

My guess would be the use of the degree character is the issue.


See www.grainge.org for free RoboHelp and Authoring information.

@petergrainge

Use the menu (bottom right) to mark the Best Answer or Highlight particularly useful replies. Found the answer elsewhere? Share it here.
KrischuAuthor
Inspiring
February 19, 2018

From RoboHelp's online help

An Icon indicates the status of a map ID

Blue icons alias_blue_icon.png indicate that map IDs match topics.

Yellow icons alias_yellow_icon.png indicate that map IDs do not match any topics.

Locked icons locked_map_id.png (blue or yellow) indicate that the map ID is in a map file that is locked. It cannot be assigned or unassigned.


See www.grainge.org for free RoboHelp and Authoring information.

@petergrainge


Thanks, Peter. So what is going on, when a Map-Id is locked? I always disliked this nomenclature. Either with the ?, this designated something odd but actually it isn't.

Giving it a lock symbol isn't very informative, either.

Sigh. So what, one cannot change it anymore. One's gotta live with these oddities.

RH behaves so unpredictable. I'm sure I compiled the right sub project CHM, copied it into the project directory and into the !SSL!/ALL_Microsoft_HTML_HELP

and nonetheless the merged project uses an old CHM.

Which role does the .cpd file play? Can it be deleted safely. It seems the XPJ files needs it. So starting over from a .HHP file, is that a way to clean up things?

Or does it break more than it heals?

Desperate at the moment.

--

Christoph

EDIT: P.S.: It seemed that deleting the .cpd file and starting over the merged project solved the glitches.