load topic from another CHM at runtime

Please post all questions on Help+Manual 8 here

Moderators: Alexander Halser, Tim Green

Post Reply
Thomas Grehl
Posts: 29
Joined: Tue Feb 28, 2006 7:14 pm

load topic from another CHM at runtime

Unread post by Thomas Grehl »

Hi,

maybe this sounds like a strage request, but we have some special requirements on configuring the CHM help at runtime. Heavily use custom builds which adds quite some complexity. We also use merge at runtime, so by installing the right CHMs we can configure which content the user should see (depending on the hardware options of our product that a specific user has on his machine).
Now we would like to go another step: The individual component CHMs have some content, that we would like to display in the "how to use the machine" CHM file. However, this should not be just links to universal topic IDs, which find their target depending on which exact CHM is actually installed on the customer PC. We would like ot actually display the content of thre respective content.
Maybe this can be done with Javascript? Something like "if you find abcd.chm display topic 1234.htm from that file, otherwise display the same topic from efgh.chm"

Any idea if that has been done before or if there is a solution to it?

thanks,
Thomas
Thomas Grehl
IONTOF GmbH
www.iontof.com
Thomas Grehl
Posts: 29
Joined: Tue Feb 28, 2006 7:14 pm

Re: load topic from another CHM at runtime

Unread post by Thomas Grehl »

More comments: We would like avoid custom builds, as this would give to many combinations of configurations. Alternatively, we could also think about using the existence of some external file (the CHMs that we install depending on configuration) to make some content visible in the "How to use the machine" CHM: "if file abcd.chm exists, show the following content".
Thomas Grehl
IONTOF GmbH
www.iontof.com
User avatar
Tim Green
Site Admin
Posts: 23181
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: load topic from another CHM at runtime

Unread post by Tim Green »

Hi Thomas,
Maybe this can be done with Javascript? Something like "if you find abcd.chm display topic 1234.htm from that file, otherwise display the same topic from efgh.chm"
Not with JavaScript, but this facility is already built into CHM. That is what the A-Link keywords are for (A stands for "associative"). They are specifically there to display one topic (also in another runtime module) if it is available, and a fallback topic if it is not available. Here are the instructions you need:

https://www.helpandmanual.com/help/hm_w ... words.html

The original CHM developers were very good, and it is a great pity that Microsoft completely abandoned the entire system directly after it was released in 1998. It has literally not been changed at all since then. It still contains all the original bugs and quirks, and none of the promised improvements ever materialized. The original developers have been away from Microsoft for many years now, and so it is just a "black box" system that nobody at Microsoft is going to touch ever again. When there are problems Windows is just patched around it. :| :roll:
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.
Thomas Grehl
Posts: 29
Joined: Tue Feb 28, 2006 7:14 pm

Re: load topic from another CHM at runtime

Unread post by Thomas Grehl »

Hi Tim,

thanks for the prompt reply! I knew the background of CHM somewhat, and I still think it is worth to stick with it due to its great design.

However, your solution is not quite what I asked for (If I get it right): you suggest to insert a link to a topic that is present in one or more linked CHMs, or not (then display an alternative topic from the master). This we already achieve by using the same Topic-ID in CHMs which replace each other on the target machine (except that we get a dead link if none of the CHMs is there).
However, we now would like to display the topic _inline_, like a snippet.

Ideas?
Thomas
Thomas Grehl
IONTOF GmbH
www.iontof.com
User avatar
Tim Green
Site Admin
Posts: 23181
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: load topic from another CHM at runtime

Unread post by Tim Green »

Thomas Grehl wrote: Tue Nov 09, 2021 8:40 am However, we now would like to display the topic _inline_, like a snippet.
There is precisely zero possibility of doing that in any practical way. 8)
I knew the background of CHM somewhat, and I still think it is worth to stick with it due to its great design.
That's a matter of taste -- the CHM viewer now looks terribly dated, and when users see it they will tend to think that your software may be out of date as well. I know that Help+Manual still has CHM help but I don't think I've used it directly even once in the last few years. But for the time being it looks as though Microsoft is going to continue to support it -- in the sense that it still works in Windows -- at least for the duration of Windows 11.
Regards,
Tim (EC Software Documentation & User Support)

Private support:
Please do not email or PM me with private support requests -- post to the forum directly.
Thomas Grehl
Posts: 29
Joined: Tue Feb 28, 2006 7:14 pm

Re: load topic from another CHM at runtime

Unread post by Thomas Grehl »

Hi Tim,

thanks for the clear answer - we will have to think how to configure our help in a different way.

With "great design" I refered to the technical design, not the visual - that is of course out of date since a decade. But the systems works very well for us, although we also have some part of it as Webhelp and render a huge PDF from the whole documentation - this is ecactly why H&M is the right tool for us.

Thomas
Thomas Grehl
IONTOF GmbH
www.iontof.com
Post Reply