Error HXC3023

Topics: Developer Forum, Project Management Forum, User Forum
Oct 20, 2011 at 6:42 PM

I just installed the new 1.9.3.0 version (comming from v1.8.x).

MSHelp1 and MSHelpViewer content is just building fine.

 Just the MSHelp2 content fails with the following error!

Compiling MS Help 2 file...

[C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe]

C:\Development\BASS_new\Bass.Net20\doc\Working\Build2xHelpFile.proj(62,5): error MSB6006: "HXCOMP.EXE" exited with code 2.

Microsoft Help Compiler Version 2.07.61224.0 Copyright (c) Microsoft Corp.

Info: Building output file Bass.Net.HxS.

Error HXC3023: File C:\Development\BASS_new\Bass.Net20\doc\Working\Output\MSHelp2\Bass.Net.HxT, Line 0, Char 0: Failed to open file html\Overview.htm.

Error HXC3023: File C:\Development\BASS_new\Bass.Net20\doc\Working\Output\MSHelp2\Bass.Net.HxT, Line 0, Char 0: Failed to open file html\Interop.htm.

Error HXC3023: File C:\Development\BASS_new\Bass.Net20\doc\Working\Output\MSHelp2\Bass.Net.HxT, Line 0, Char 0: Failed to open file html\Upgrading.htm.

Error HXC3023: File C:\Development\BASS_new\Bass.Net20\doc\Working\Output\MSHelp2\Bass.Net.HxT, Line 0, Char 0: Failed to open file html\VersionHistory.htm.

Error HXC3023: Failed to open file C:/Development/BASS_new/Bass.Net20/doc/Working/Output/MSHelp2/html/Overview.htm.

Error HXC3023: Failed to open file C:/Development/BASS_new/Bass.Net20/doc/Working/Output/MSHelp2/html/Interop.htm.

Error HXC3023: Failed to open file C:/Development/BASS_new/Bass.Net20/doc/Working/Output/MSHelp2/html/Upgrading.htm.

Error HXC3023: Failed to open file C:/Development/BASS_new/Bass.Net20/doc/Working/Output/MSHelp2/html/VersionHistory.htm.

 

The above files are additional content files existing in the Project Explorer as MAML .topic files.

The funny thing is, that the files are actually present in the errorness folder, but with the worng extension (they are present as ".html").

E.g. SHFB seems to have created/conveted the files as ".html" files - but the SHFB/HXCOMP tries to look them up as ".htm" - which will the  of course fail!

 

And idea how to solve that?

THX

Bernd

Coordinator
Oct 20, 2011 at 7:27 PM

What do you mean by "the above files are additional content files existing in the Project Explorer as MAML .topic files"?  HTML is not MAML so trying to use them as such will fail.  If they are the old style XML topic files (also not MAML) that are converted by a transform item in the project, you may need to indicate which file is the transform by setting its build action accordingly.  The topics to transform will need a build action of Content.  However, the old style additional content has been deprecated and I'd suggest converting the topics to true MAML content and use a content layout file to define their layout in the TOC.  There's a converter that will get you most of the way included in the guided installer.

Eric

 

Oct 20, 2011 at 7:50 PM
Edited Oct 20, 2011 at 8:04 PM

Yes, sorry, they are 'old style' XML files - which have just worked fine in v1.8.x or previous versions of SHFB.

The transform is specified in the build action as 'Content' - as you suggested (this also haven't be changed since v1.8.x).

So I am just wondering why (even if this topic transform is now depricated) fails in the new version?

I guess it must just be a simple issue, as, as said the files got converted correctly to a .html file - but it seems that later they are somehow reffered as .htm files and as such not found.

It is also funny, that those .topic files are builded/used correctly with MSHelp1 or MSHelpViewer - it is just the MSHelp2 build which fails...

Can i adjust this somewhere or is the new build now totally breaking the 'old' .topic files?

THX

Bernd

Coordinator
Oct 21, 2011 at 2:28 AM

The transform isn't Content, it should have a build action of TopicTransform.  As it is, it's probably just copying that across to the help file as content and using the default transformation.  Most likely, something got broken inadvertently by other changes.  There were significant changes to the TOC processing just over a year ago to support MS Help Viewer so it's most likely related to that or the transform part was updated in some manner to support the new TOC info export.  To be honest, the deprecated stuff doesn't get tested much if at all in the newer releases since it isn't supported and won't get any further enhancements.  I'll take a look at fixing any bugs but since there's an available permanent solution in converting to MAML which is supported, they're a the bottom of the list.

Eric

 

Oct 21, 2011 at 4:08 PM

Some further notes:

a) The BuildAction of the XML based .topic files added to the project needs to be set to 'Content' in order to be included to the help output.
When I set it to 'TopicTransfrom' they are NOT included at all !

b) When the BuildAction is set to 'Content' the MSHelp1 (chm) file is build correctly and the additional .topic files are included as expected and as woring in previous versions!

c) When the BuildAction is set to 'Content' the MSHelp2 files fail to build with the above errors.

d) When the BuildAction is set to 'Content' the MSHelpViewer files build without errors - but the additional content is NOT included in the resulting help files (.mshc).

So there must definitly something broken with the new TOC handling - at least v1.9.3 is not backward compatible with v1.8.x.

Maybe you can find some glitches...

THX for the help anyhow!

Coordinator
Oct 21, 2011 at 7:10 PM

You said you set the "transform" to Content.  A transform file and a content file are two different things hence my note about the build action.  A custom transform file isn't a topic file.  It is used to replace the default XSL transformation used by SHFB.  The .topic content files are ran through the transform file to produce the HTML output.  The .topic files do need a build action of Content so there's no misunderstanding there.

As noted in the Known Issues topic and the prior release notes, the deprecated additional content model is not supported in MS Help Viewer at all.  If you want to produce MS Help Viewer content, you must switch to MAML content.

Eric