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

HHC3015:Warning Error -Alias created but file does not exist?

New Here ,
Jul 31, 2009 Jul 31, 2009

Copy link to clipboard

Copied

Hello folks,

I have recently had to recreate a merged help project (the previous project became corrupt) and added two new Map IDs to two new topics. I added them to the AutomationServer and DomainManager child projects.  When I go into the the master project and generate  this error appears in the output view:

HHC3015: Warning:
An alias has been created to "#BMS_Command_Preview_Fields" but the file does not exist

This is one of the two new Map IDs I created. It pertains to the AutomationServer child project. I guess the DomainManager child project didn't cause an issue and is working properly. I have looked at the AutomationServer *.h file and the (Master directory) redirect file to see if I put a typo in the line or the wrong path..but it seems ok. The only difference about this child project that is different from the other child projects is that is using the default BSSCDefault.h filename. The other children projects *.h files are uniquely named. I thought maybe the # symbol was a "space" so I re-checked my syntax in the *.h, master.ali and redirect.html file and there is no space. I am not an expert on merged help systems.  I am stumped. Here are my entries:

BSSCDefault.h :

#define Connecting_to_the_Server1    100
#define Client_Preferences_Fields    102
#define Stored_Batches_Overview    105
#define Starting_Services    106
#define GPI_Triggered_Batches_Overview    110
#define Managing_Custom_Timeline_Views    101
#define Managing_Timeline_Objects    104
#define Resume_Batch    107
#define Batch_Properties    108
#define BatchSchedule    111
#define ServerPreferences    103
#define GPISNMPPrefs    112
#define SystemServicePrefs    113
#define EISPrefs    114
#define DPIPrefs    115
#define StoredBatch    109
#define SCGProps    116
#define ACGProps    117
#define BMS_Command_Preview_Fields    118

Master.ali :

PSI_Generator_Properties=redirect.xhtm#PSI_Generator_Properties
PSIG_Configuration_Fields=redirect.xhtm#PSIG_Configuration_Fields
Program_Video_Decoding_Fields=redirect.xhtm#Program_Video_Decoding_Fields
BMS_Command_Preview_Fields=redirect.xhtm#BMS_Command_Preview_Fields
Manage_Alarm_Configuration_Fields=redirect.xhtm#Manage_Alarm_Configuration_Fields


redirect.xhtm:

else if (Code == "BMS_Command_Preview_Fields")
    URL = "AutomationServer.chm::/BMS_Command_Preview_Fields.htm";

else if (Code == "Manage_Alarm_Configuration_Fields")
    URL = "DomainManager.chm::/Manage_Alarm_Configuration_Fields.htm";

- end

Views

5.2K

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
New Here ,
Jul 31, 2009 Jul 31, 2009

Copy link to clipboard

Copied

...While doing some searching...I found:

"Late to the party, but...

This is a bug in the HTML Help compiler, which, when it encounters a bookmark in the alias file,  always reports an error — regardless of whether the aliasing is correct or not. Provided you've set up the topic file-to-ID aliasing correctly, the context call to the bookmark should work correctly.

Pete"

...so it may be working?It was a regular mapID and topic, not a bookmark though.....

I also noticed that I added that child project to the master project and decided to look at the old (corrupted) master project. It seems that particular child project was not part of the orignal master project. So the master project can still suck up all of the proper context-sensitive info even if it isn't in the master project? After I removed the child project from my new master project and regenerated...the error still appeared!!??

also, I am using RoboHelp 7 generating HTML Help in a merged help system in the following arrangement:

Master project

     - child1 project

     - child2 project

     - ...child8 project

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
Enthusiast ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

Hi, Mike,

The redirection method that you're using requires you to set up the map IDs and aliases in the master Help project rather than the slaves. The idea of this method is to channel each context call through the master Help file, where it is redirected to the appropriate slave, instead of passing the call directly to the slave. From your description, it sounds like you've compiled BSSCDefault.h into the slave file rather than the master file, and consequently the master file has no knowledge of this mapping:

#define BMS_Command_Preview_Fields    118

If this is correct, the solution should therefore be to add the mapping to your master's .h file.

In case you haven't seen it, here is a complete description of the method that you're using:

http://helpware.net/htmlhelp/how_to_merge_ctx2.htm

It's odd that you don't receive an error message about the other map ID that you recently added. In that case, did you add the mapping to the master .h file instead of (or as well as) the .h file for the DomainManager file?

One way to verify that the context help calls work is to use the Test HtmlHelp API facility in HTML Help Workshop. You simply fire the required context integer at your master Help file, like this:

hhw.png

Pete

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
New Here ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

Hi, forme3d,

Thanks greatly for replying. I know this isn't easy diagnosing through replies. See replies in  Blue text

The redirection method that you're using requires you to set up the map IDs and aliases in the master Help project rather than the slaves. The idea of this method is to channel each context call through the master Help file, where it is redirected to the appropriate slave, instead of passing it to the slave directly. From your description, it sounds like you've compiled BSSCDefault.h into the slave file rather than the master file, and consequently the master file has no knowledge of this mapping:

#define BMS_Command_Preview_Fields    118

If this is correct, the solution should therefore be to add the mapping to your master's .h file.

Forme3d: I added the (above) mapping info into to the master.h file and regenerated the master project. The same error showed up.

In case you haven't seen it, here is a complete description of the method that you're using:

http://helpware.net/htmlhelp/how_to_merge_ctx2.htm

It's odd that you don't receive an error message about the other map ID that you recently added. In that case, did you add the mapping to the master .h file instead of (or as well as) the .h file for the DomainManager file?

Forme3d: Nope. I did not have the other map id added to the master.h file. Before I got your latest reply, this is what the master.h file looked like (just one entry):

#define MainHelp    40014


As you suggested I added the trouble map id and the other (no-trouble) map id for grins :

#define MainHelp    40014
#define BMS_Command_Preview_Fields    118
#define Manage_Alarm_Configuration_Fields    43050

FYI: I did find an old masterold.h file which had a whole bunch of map id info in it. I wonder why it is so chock full of IDs and the current one is not?

One way to verify that the context help calls work is to use the Test HtmlHelp API facility in HTML Help Workshop. You simply fire the required context integer at your master Help file, like this:

hhw.png

HTML Help Workshop hangs every time I use it...


I installed the Help Workshop (said I had a later version installed) and typed in the master.chm, selected HH_HELP_Context, typed main and 118 and clicked Test.. Here is the result:


TestMapID.gif

PeteFYI

If I look at the Master.hhp file I see a [MAP] section. Do I need to add all of the *.h files there? Currently the only one listed is BSSCDefault.h which coincidently is the *.h file for the (problem) AutomationServer child project, where the trouble Map ID lives. Hmmmm. See attached Master.hhp file. I have a feeling that the contractors who prepared the instructions on how to do this may have left out something.

In the next post I will post the instructions I am using....

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
New Here ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

Here are the instructions that I was left with....:

2.4.5   Context Help
The  context help is created in each module help project and in the Master help project.
2.4.5.1   Context Help Components
Each context help button requires three items:
A help ID (numerical). This ID is a number that the NMX programmer adds to the code in
order to call a particular help topic.
A keyword or phrase (descriptive but brief). The keyword is the link between the ID and
the help topic file. Keywords should reflect the content of the help topic. For example, the
keyword for a topic called “Importing a Profile” might be ImportProfile.
A help topic file. The help topic file is an .htm file that resides in one of the modular help
systems or in the Master help system.
The following support files are involved in context help:
.h (header) files from each help module that has context help, including a Master.h file for
the Master help project. The header file maps the ID to the keyword. You create the
header files by hand. Each header file resides in the top-level folder of the help module to
which it pertains. 
.ali files from each help module that has context help. The .ali files for the individual
modules map each keyword to the appropriate path and help topic (.htm file) within that
module. The .ali file for each module is created automatically when you link IDs to topics
within RoboHelp. 
Master.ali. The Master.ali file is the link from the modular help project to the Master help
project. The modular .ali file mapping does not take into account the existence of a
Master project. To map files correctly, you must use a redirect file. The Master.ali file maps
each keyword to the appropriate line in the redirect file. 
 
redirect.xhtm. The redirect file resides in the Master help project. It maps each keyword
to the appropriate help topic, providing the module name, path, and topic file name.


2.4.5.2 Adding an  Context Topic
To add a context topic to the NMX modular help system:
1. Use Notepad to open the .h file for the help module to which you’re adding a context
topic. For example, if you’re adding a topic to the Configuration help module, open
configuration.h in the top-level folder for the Configuration help module.
2. In the .h file, define a topic keyword and ID for the topic. The ID you assign should be the
next available ID for that project. That is, if you’re adding a topic to Configuration help,
and the last ID assigned in Configuration.h is 40041, the new topic should use the ID
40042. The keyword you assign should reflect the content of the topic.
3. Save and close the .h file.
4. Open the project file for the help module in RoboHelp, and create the new topic.
5. Use the RoboHelp Context-Sensitive Help UI to assign the #define IDs to the topics.
6. Save the project file.
7. Compile the module.
8. Place a copy of the updated .h file for the module into the top-level Master project folder.
9. Place a copy of the updated .chm file for the module in the top-level Master project
folder.
10. Open the Master.ali file in Notepad, and add the new topic information to the file.
11. Save and close Master.ali.
12. Open the redirect.xhtm file in Notepad, and add the new topic information to the file.
Be careful when copying and pasting. Make sure to refer to the correct help module for
each entry.
13. Save and close redirect.xhtm.

14. From the Master project’s !SSL!\Microsoft_HTML_Help folder, remove the old versions of
the revised .chm file.
15. Open the Master help project in RoboHelp, and compile the project.
16. Test the files delivered to the Master project’s SSL folder. (Put them on an computer,
and test the new context topic and a few random topics.) For more information, see
2.7.2 Testing Online Help on page 17.
17. Submit the new .chm files for check-in. The batch of files that you send should include all
revised modular .chm files plus Master.chm.

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
Enthusiast ,
Aug 03, 2009 Aug 03, 2009

Copy link to clipboard

Copied

Hi, Mike,

If I look at the Master.hhp file I see a [MAP] section. Do I need to add all of the *.h files there? Currently the only one listed is BSSCDefault.h which coincidently is the *.h file for the (problem) AutomationServer child project, where the trouble Map ID lives.


Yes, I think that this is the crux of the issue. You're aiming to channel all the context help calls for the slave Help files through the master file, so you need to store all the mappings inside the master file. This is achieved by modifying the MAP section in the master's project (.hhp) file. For each slave file, you add a #define statement to the MAP section that references the slave's header (.h) file. Before you compile the master Help file, you need to ensure that all the required header files are in the same folder as the master's .hhp file.

Can you you give this a try and, if you continue to have problems, send me your redirect.xhtm file and .hhp, .h, and .ali files for your master and slave? You can contact me by clicking my user name at the left.

I installed the Help Workshop (said I had a later version installed)


This is a known issue, and nothing to worry about. I won't go into details other than to point you to this message in the MSDN Developer Documentation forum:

http://social.msdn.microsoft.com/Forums/en-US/devdocs/thread/332e56a8-38d4-4b65-bda7-5be120b01830/#5...

Pete

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
New Here ,
Aug 05, 2009 Aug 05, 2009

Copy link to clipboard

Copied

BHi Pete,

Yes, I went ahead and adding the other *.h files to the [MAP] section of the Master.hhp file. Regenerated and saw all of those errors fly by which I think is RoboHelp's way of saying I am trying to reach out to those map IDs. I believe RoboHelp was using the data in those other *.h successfully.


Also, QA confirmed that that one trouble button was working. Good news.

So today I added the info for another Map ID to another help topic. Went through all of the steps and regenerted the Master project. When presented with the Click to view Master.chm button the following error appeared:

invalidHTMLTag.gif

But I also noticed that all of those errors weren't flying by  in the Output View so I examined the Master.hhp file again. The file had reverted back to only having one *.h file listed instead of the one where I had manually added all of the other *.h files!!! Is RoboHelp overwriting that file? I am beginning to think that RoboHelp is slowly falling apart before my eyes!! I am also going to suggest to my supervisor that we upgrade to RoboHelp 8 just to see if it saves me from this constant hassle!! My deadline is two weeks away.

Have you ever seen the above error message? Does RH overwrite that file?!?!

Thanks,

Mike

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
Enthusiast ,
Aug 06, 2009 Aug 06, 2009

Copy link to clipboard

Copied

LATEST

Hi, Mike,

Here is a link to another discussion, which suggests that this problem can arise when the last entry in the TOC is an Include statement for a slave .chm file:

http://groups.google.co.uk/group/macromedia.robohelp.robohelp_for_htmlhelp/browse_thread/thread/7468...

I think this would be a RoboHelp bug, if true in your case, because the HTML Help compiler doesn't normally have any problems with Include statements at the end of a TOC.

You may also find this discussion useful:

http://forums.adobe.com/thread/426228

As it happens, I don't use RoboHelp for Help development, so I can't comment on the problems with corrupted .hhp files. But if this is happening for you, one option may be to try compiling your master Help file outside RoboHelp, with HTML Help Workshop. At least you can be sure then that none of the supporting files that are required for compilation is corrupted in any way. However, it does mean that any RoboHelp-specific additions to the Help viewer — primarily browse sequences and glossary — won't be available in the master Help file.

Pete

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
New Here ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

I am going to try to attach some of the master related files (*.h,hhp, etc)....


Master.hhp

Master.ali

redirect.xhtm

Hopefully this will help. Also here is a video of my testing using RoboHelps CSH tester ....at the *.chm level for each child project the links work..but when I test the master.chm file that is where the links do not work.....something is broken...hopefully the attached files can shed some light.

http://screencast.com/t/IyyDubHk

Thanks!

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
New Here ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

See attached files...the forum won't let me upload files...

-Master.hhp

-master.h

masterold.h

.end

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
New Here ,
Aug 02, 2009 Aug 02, 2009

Copy link to clipboard

Copied

New Master.hhp vs Old Master.hhp?

For your reading pleasure. Since the forum won't let me upload files of any type. Both the "New" master.hhp file and the "Old" master.hhp file. Keep in mind the old one sits in the corrupted master project directory.

master.hhp (NEW):

[OPTIONS]
Compiled File=Master.chm
Title=Master
Contents File=Master.hhc
Index File=Master.hhk
Default topic=Introduction.htm
Default Window=NewWindow
Error log file=
Display compile progress=No
Display compile notes=No
Full-text search=Yes
Binary Index=Yes
Auto Index=No
Enhanced decompilation=No
Binary TOC=No
Flat=No

[WINDOWS]
NewWindow="Master","Master.hhc","Master.hhk","","",,,,,0x520,0,0x3006,[5,5,512,384],0x0,0x0,,0,0,0

[FILES]
Introduction.htm
RoboHHRE.lng

Master.glo
Master.brs
[ALIAS]
#include Master.ali

[MAP]

#include BSSCDefault.h


[TEXT POPUPS]
BSSCDefault.h

[MERGE FILES]
UsingSystemX.chm
Configuration.chm
StreamEditor.chm
Options.chm
DomainManager.chm
Alarms.chm
ProxySites.chm
NMXReports.chm
AutomationServer.chm

------------------------------------------

Old Master.hhp:

[OPTIONS]
Compiled File=Master.chm
Title=Master
Contents File=Master.hhc
Index File=Master.hhk
Default topic=Introduction.htm
Default Window=NewWindow
Error log file=
Display compile progress=No
Display compile notes=No
Full-text search=Yes
Binary Index=Yes
Auto Index=No
Enhanced decompilation=No
Binary TOC=No
Flat=No

[WINDOWS]
NewWindow="Welcome to NMX","Master.hhc","Master.hhk","","",,,,,0x420,0,0x200e,[0,0,500,400],0x0,0x0,,0,0,0

[FILES]
Introduction.htm
redirect.xhtm
RoboHHRE.lng

Master.glo
Master.brs
[ALIAS]
#include Master.ali

[MAP]
#include Alarms.h
#include BSSCDefault.h
#include Configuration.h
#include DomainManager.h
#include master.h
#include Options.h
#include ProxySites.h
#include StreamEditor.h
#include usingsystemx.h

[TEXT POPUPS]
Alarms.h
BSSCDefault.h
Configuration.h
DomainManager.h
master.h
Options.h
ProxySites.h
StreamEditor.h
usingsystemx.h

[MERGE FILES]
C:\Company\NMX\4.5_Help\Master_4.5\UsingSystemX.chm
C:\Company\NMX\4.5_Help\Master_4.5\StreamEditor.chm
C:\Company\NMX\4.5_Help\Master_4.5\NMXReports.chm
C:\Company\NMX\4.5_Help\Master_4.5\Configuration.chm
C:\Company\NMX\4.5_Help\Master_4.5\Alarms.chm
C:\Company\NMX\4.5_Help\Master_4.5\ProxySites.chm
C:\Company\NMX\4.5_Help\Master_4.5\Options.chm
C:\Company\NMX\4.5_Help\Master_4.5\DomainManager.chm
C:\Company\NMX\Help\Master\Alarms.chm
C:\Company\NMX\Help\Master\NMXReports.chm
C:\Company\NMX\Help\Master\DomainManager.chm
C:\Company\NMX\Help\Master\Options.chm
C:\Company\NMX\Help\Master\ProxySites.chm
C:\Company\NMX\Help\Master\UsingSystemX.chm
C:\Company\NMX\Help\Master\StreamEditor.chm
C:\Company\NMX\Help\Master\Configuration.chm

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