Context-sensitive help is breaking with new PP 3.46 skin

This forum is for discussions on the Help & Manual Premium Pack and the Premium Pack Toolbox configuration utility introduced with Premium Pack 3

Moderators: Alexander Halser, Tim Green

User avatar
Tim Green
Site Admin
Posts: 23154
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Tim Green »

Hi Marie-Christine,

To clarify on what you're seeing in the URL: The component that manages the browser history needs to write a session ID to the URL when an URL is first called from external in order to orient itself when you're calling the WebHelp without a web server. That looks a bit funky but it's unavoidable. The index.html#contextid=xxxxxx syntax is correct in this skin when you're not using a web server. In all my local tests it's working, which is why I'm a little puzzled that it's not working for you.

For example, using the web server variant, you can visit a topic in the online version of the current help using this context ID link:

http://www.it-authoring.com/info/pp3hel ... tid=101000

This is published using the 3.46 version of the V3 skins and is also working locally without a web server, using the # syntax instead of the ? syntax. All this is why I so much wanted to see a demo project from you to see if there was something about your project that was causing the problem. Basically, if your programmer is using a shellExecute() or similar to open the browser with the URL using the # syntax it should be working and it's strange that it isn't in your case.
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.
User avatar
Tim Green
Site Admin
Posts: 23154
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Tim Green »

Here are two screenshots showing that it definitely works. First, here is the correct call to the local WebHelp using a context number, opening correctly:

Code: Select all

"C:\Program Files (x86)\Internet Explorer\iexplore.exe" "file:///E:/Documents/My HelpAndManual Projects/DemoHelp/HTML/index.html#contextid=6120"
LocalWHcontext.png
The URL that is then displayed in the Address: bar by the history script looks like this:

Code: Select all

file:///E:/Documents/My%20HelpAndManual%20Projects/DemoHelp/HTML/index.html?&_suid=154841743464707945150996225393#hm5_quickstart_importing.html?&_suid=154841743464707945150996225393
That is just what it needs internally for its own orientation. The URL you call from your application is the one shown further above.

Then, just for the sake of completeness, here is the correct call to the local WebHelp using the topic filename, also opening correctly:

Code: Select all

C:\Program Files (x86)\Internet Explorer\iexplore.exe" "file:///E:/Documents/My HelpAndManual Projects/DemoHelp/HTML/index.html#hm_quickstart_explorer_navigate.html"
LocalWHfilename.png
Of course, if you're calling the filename, you can just as well call it directly, like this:

Code: Select all

C:\Program Files (x86)\Internet Explorer\iexplore.exe" "file:///E:/Documents/My HelpAndManual Projects/DemoHelp/HTML/hm_quickstart_explorer_navigate.html"
You do not have the required permissions to view the files attached to this post.
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.
Marie-Christine Mahe
Posts: 13
Joined: Wed Dec 19, 2018 2:39 am

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Marie-Christine Mahe »

Whew. Problem solved, we now have functional (and context-sensitive) help.

It turned out, as so many things, to be mostly a tangle of user errors. We tested with the 'Local without web server' build option on, and we tested with the '#' in the URL for context IDs, but we seem to not have tested with both at once. And they go hand in hand people, don't do one alone. Multiple cooks and too much urgency, combined with too many throw-backs to previous versions of the doc...

We got into additional trouble because someone here, too used to IE's interference, didn't realize that a URL was case-sensitive, and used Index.html instead of index.html. That broke both chrome and firefox. Note that H&M, which correctly threw a 'nonexistent' error when a truly bad URL was used, merely redirected us to the first page when we flubbed the case on an existing file.

Anyway, hopefully our travails will be useful to someone..
Thank you!
User avatar
Tim Green
Site Admin
Posts: 23154
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Tim Green »

Hi Marie,

Thanks for the heads-up on this, glad to hear you got it sorted out. Issues like this are terribly frustrating, especially when you're just trying to get something finished. I'm afraid I also missed the Index.html instead of index.html in your screenshot, otherwise I would have flagged it right away. My bad on that one.

The local without web server setting is particularly important for Internet Explorer, because it tells it that everything is really local and that it is allowed to load script files safely even if there isn't a web server available. Not also that none of this will work on the Microsoft Edge browser on Windows 10, at least not at the moment. Edge is very funky and from update to update it goes through periods of allowing local scripted sites like IE and blocking them completely. At the moment it appears to be blocking them completely again and there's nothing that can be done about that... :? However, that will only be transient, because Edge is being canned completely. Microsoft has announced that in the course of this year they're going to replace it with a new browser based on the Google Chrome engine, which should mean that we will finally have a Microsoft browser that is genuinely standards-compatible.

For the future, you might also want to have a look at Help+Manual's eWriter format. This combines the benefits of WebHelp and CHM files and eliminates most of the disadvantages, but you would have to use a new calling syntax. There are also eWriter versions of the V3 skins for it that you are already using. Unlike WebHelp it packs everything in a single file and opens every call from your software in the same window. Unlike CHM you can use it on network drives, skin and style the whole interface and link to external files with impunity, even to EXE files for creating tutorials that actually link to your application. See here for information:

https://helpandmanual.com/help/index.ht ... writer.htm
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.
Marie-Christine Mahe
Posts: 13
Joined: Wed Dec 19, 2018 2:39 am

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Marie-Christine Mahe »

Thanks for the heads-up on eWriter Tim. It does sound like it has some advantages, but it also traps you into Windows. So we hope that you'll keep maintaining WebHelp, because at the moment we'd prefer to be a bit less dependent on Microsoft (see the Edge gyrations etc..).
User avatar
Tim Green
Site Admin
Posts: 23154
Joined: Mon Jun 24, 2002 9:11 am
Location: Bruehl, Germany
Contact:

Re: Context-sensitive help is breaking with new PP 3.46 skin

Unread post by Tim Green »

Hi Marie-Christine,
Marie-Christine Mahe wrote:Thanks for the heads-up on eWriter Tim. It does sound like it has some advantages, but it also traps you into Windows. So we hope that you'll keep maintaining WebHelp, because at the moment we'd prefer to be a bit less dependent on Microsoft (see the Edge gyrations etc..).
Yes, eWriter is really only a Windows solution, and of course we wouldn't dream of abandoning WebHelp.

On the Edge subject: Edge will thankfully be history after the end of this year as Microsoft is trashing it and replacing it with a new browser based on the Google Chrome HTML rendering engine (Blink), which should give better standards-compatibility if they manage to resist messing it up. :?
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.
Post Reply