4 Replies Latest reply on Nov 16, 2007 2:54 PM by Handy13

    Command line compiling - Visual Studio - Vista

    Handy13
      Hi,

      I've tried about everything. Stuck...

      In the past the following Custom Build Step associated with
      the .hpj file in Visual Studio caused the WinHelp .hlp file to be generated
      and only when it was out of date:

      start /wait hcw /C /E /M "hlp\$(ProjectName).hpj"
      if errorlevel 1 goto :HelpError
      if not exist "hlp\HandyAvi.hlp" goto :HelpError
      if not exist "hlp\HandyAvi.cnt" goto :HelpError
      echo.
      copy "hlp\HandyAvi.hlp" "$(OutDir)"
      copy "hlp\HandyAvi.cnt" "$(OutDir)"
      goto :HelpDone
      :HelpError
      echo hlp\$(ProjectName).hpj(1) : error: Problem encountered creating help file
      :HelpDone
      echo.

      Now I have converted to HTML Help which generates a .chm file. Robohelp
      does everything just fine but I would also like Visual Studio to compile the
      .chm file if and only if it needs it.

      The closest I have come is this:

      start /wait hhc "hlp\htmlhelp\$(ProjectName).hhp"
      REM if errorlevel 1 goto :HelpError0
      if not exist "hlp\HandyAvi.chm" goto :HelpError
      if not exist "hlp\HandyAvi.cnt" goto :HelpError
      echo.
      copy "hlp\HandyAvi.chm" "$(OutDir)"
      copy "hlp\HandyAvi.cnt" "$(OutDir)"
      goto :HelpDone
      :HelpError
      echo hlp\$(ProjectName).hpj(1) : error: Problem encountered creating help file
      goto :HelpDone
      :HelpError0
      echo hlp\$(ProjectName).hpj(1) : error: hhc failed during help file creation.
      :HelpDone
      echo.

      Close but no cigar... This ALWAYS causes the .chm file to be recompiled.
      It also does not properly report errorlevel so I had to comment that out.

      I've put more time in on this than I should have already...
      I hate it when some subsystem "loses ground" and this one
      has and it is really annoying me...

      Please, anyone know how to make it work properly like it used to?

      It seems I should be able to use hcw instead of hhc. Why can I not
      make that work?

      What is Robohelp actually doing when it compiles a .chm file?
      Whatever the solution is, it can be tested in a DOS window...

      I called Adobe. The people I talked to don't know how it works
      and they don't know (or care?) how to make it work. :-)

      Thanks!

        • 1. Re: Command line compiling - Visual Studio - Vista
          ElisaFnord Level 2
          I wish I could answer any of your good questions - I'd love to know what RoboHelp actually does when it compiles a .chm file.

          I do have one suggestion - remove the .cnt files from your code. My understanding is that this Table of Contents file type is only used by WinHelp. I don't think RoboHelp generates a .cnt file at all for .chm - and if it's looking for a nonexistent .cnt file each time, that may be why it generates.

          HTH,
          Elisa
          • 2. Re: Command line compiling - Visual Studio - Vista
            Handy13 Level 1
            Hi,

            Yes, yesterday I did run with and without the .cnt file. When it is eliminated, there is not table of contents data in the generated file. When it is restored, the table of contents is restored and works normally. So it's not that....

            Generally before I seek help, I try EVERYTHING. I have invested about 20 hours into RoboHelp-in-Vista puzzles so far. Have made some progress on some of the puzzles but still have the mk:MSITStore... can't run program problem when trying to view the .chm file if RoboHelp tries to start it. If I go to the directory where the .chm file is and double-click it, then it runs fine but that is a little inconvenient...

            Thanks,

            Howard
            • 3. Re: Command line compiling - Visual Studio - Vista
              ElisaFnord Level 2
              Well, I'm baffled!

              I'm sure you searched the forums, too, but just in case, the MSITStore message seems to be showing up when there's something odd about the project files. Your having converted from RHWord to RHHTML might have caused something non-standard (not necessarily corrupted) - and the only thing that has worked for people so far is to recreate the .cpd file and some of its attendant files. This thread has instructions.

              Other than that, I'm beyond my depth. I'm intensely interested in the solution, though, since I'm trying to get my company to build from the command line. So if anybody has anything that might work - help!

              Elisa
              • 4. Re: Command line compiling - Visual Studio - Vista
                Handy13 Level 1
                Well, by removing all the image folders in Images and Multimedia - Image folders (BMROOT), then rebuilding, then the MSITStore error message does not occur. The chm file is displayed properly by RoboHelp (with all the images missing of course!) . I then restored the image folder, deleted most of my images and that also worked. Does not work when all my images are included. Looks like RoboHelp does not like .chm files with more than just a few images? I LIKE images and use LOTS of them. Screen shots, etc. This is really getting annoying.

                Before testing the above, I generated a brand new project, imported all my word documents and built the .chm file without the image folder(s). That worked but when I added the images, I started getting the MSITStore "cannot open file" errors. That is when I started experimenting wth the number of images.

                Reminds me of the time I was working with an InterBase data base on the Apollo Workstations and InterBase had used some short integers for indexing. We had WAY more items than their index space would handle. Could there really be some sort of inadvertent number-of-images size limit in RoboHelp?

                And yes, I have searched everything. Also have an open case with RoboHelp. They were able to replicate the problem at their end fortunately so presumably they are still working on it. Have not heard anything for 24 hours though... (And I am not a very "important" customer with respect to volume sales... :-) )
                However, this will probably affect a lot of people in the long run... Better they get a handle on it now.

                I know it is a problem introduced by Vista because I have tested this on XP and do not have the MSITStore problem there...

                I've looked at this: http://support.microsoft.com/kb/312456
                but I seem to have a much newer version of Hhctrl.ocx than the ones they are talking about...

                What RoboHelp presumably is doing to compile from a command line is run hhc as I've shown in my first message. As indicated, that works but it runs every time you do F5 in Visual Studio and that is REALLY annoying also. Have not gotten back to that yet due to trying to run down the MSITStore problem.

                Also had a problem after RoboHelps conversion of the .hpj file because there were no "Windows" under Project - Windows. Regenerating the project from scratch cured that. Robohelp people did provide assistance with that because I didn't know anything was missing.... If there are now "Windows" then you cannot control the size of the display when the .chm file is first displayed. It always comes up 2x3 inches or so in the upper left corner of the screen and users are going to get really tired of resizing that window so they can see something!

                Tried this: http://www.smartcomputing.com/techsupport/detail.aspx?guid=&ErrorID=25904
                didn't help...

                Well, will continue to research this.

                Thanks,

                Howard