Announcement

Collapse
No announcement yet.

OS with HelpMaker

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • OS with HelpMaker

    Ran my program on a Vista computer, and everytime user tried to
    bring up help file, a pop up box would say that winhlp32.exe is
    no longer supported by Windows? Has anyone had this problem?

    Thanks,

    BPrent

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

  • #2
    see http://www.powerbasic.com/support/pb...hread.php?t=73


    ------------------
    website: http://com.it-berater.org
    sed editor, typelib browser, com wrappers.
    forum: http://www.forum.it-berater.org
    Forum: http://www.jose.it-berater.org/smfforum/index.php

    Comment


    • #3
      Jose,

      I been reading that same file, but I don't want to take a chance
      with someone else's computer. I can't expect everyone with Vista
      to change registry, just to run the help file in my program.

      How someone has a better solution.

      Thanks,
      Brent

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

      Comment


      • #4
        Use the full path and exe name to winhlp32.exe,
        in front of your hlp file name.

        That way you need only to insure winhlp32.exe is there.

        Maybe you can supply the exe also.


        ------------------
        Roy Cline
        Roy Cline

        Comment


        • #5
          You only need to change the registry if your help file uses "macros" for some advanced features. Vista does not natively support WinHelp .hlp files as they have been superceded by the HTMLHelp .chm format.

          I'm afraid your only two options are to update your help files to another format (ie. HTMLHelp), or direct users to the Microsoft link that José provided.

          ------------------
          kgpsoftware.com - Downloads
          kgpsoftware.com - Development and Consulting
          kgpsoftware.com | Slam DBMS | PrpT Control | Other Downloads | Contact Me

          Comment


          • #6
            For a small tutorial how to convert winhelp projects:

            http://www.hellobasic.com/cgi-bin/fo...num=1179070266

            It also descibes what to do if you have a .hlp file only.


            ------------------
            http://www.hellobasic.com
            hellobasic

            Comment


            • #7
              OK, I have created a .chm file with Helpmaker's lastest version,
              but windows crashes when I try to call it up? I am using old way
              that I called up .hlp files?

              [CODE]
              CASE %WM_CONTEXTMENU ' Right click on button to see Helpfile index
              sHelpFile = "Files\_tmphhp\DESKTRIALHTML.CHM"
              ' Right mouse button click.
              CtlID = GetDlgCtrlID(CBWPARAM)
              IF CtlID = 3 THEN ' Open
              sSubject = "Open"
              ELSEIF CtlID = 4 THEN ' First
              etc...
              end if

              IF CtlID > 0 THEN
              ' Brings up Helpfile index which is sSubject
              Retval = WinHelp(hDlg, BYVAL STRPTR(sHelpFile), %HELP_PARTIALKEY, BYVAL STRPTR(sSubject))
              END IF
              [CODE/]

              Read forum about .chm, but do not see how to call up in my
              program. Above is for context help. How does one call the .chm
              file?


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


              [This message has been edited by BRENT GARDNER (edited May 16, 2007).]

              Comment


              • #8
                http://www.powerbasic.com/support/pb...ad.php?t=24742

                (found with: search, "help", forum:source code, message subject, all dates)
                Michael Mattias
                Tal Systems (retired)
                Port Washington WI USA
                [email protected]
                http://www.talsystems.com

                Comment


                • #9
                  You need to use the HtmlHelp API with .CHM files and not the WinHelp API functions. See the HTMLHelp.inc file located in your PBWin\Bin directory.

                  Sincerely,
                  Steve Rossell
                  PowerBASIC Staff
                  Sincerely,

                  Steve Rossell
                  PowerBASIC Staff

                  Comment


                  • #10
                    OK,

                    Added Kev Peels sub ExecuteHelp, and help file appears with the
                    default page showing. Problem is, can't get it to bring up a
                    contextmenu subject?

                    [CODE]
                    CASE %WM_CONTEXTMENU ' Right click on button to see Helpfile index
                    rem sHelpFile = "Files\_tmphhp\DESKTRIALHTML.CHM"
                    ' Right mouse button click.
                    CtlID = GetDlgCtrlID(CBWPARAM)
                    IF CtlID = 3 THEN ' Open
                    sSubject = "Open"
                    ELSEIF CtlID = 4 THEN ' First
                    etc...
                    end if

                    IF CtlID > 0 THEN
                    ' Brings up htmlHelpfile index which is sSubject
                    ExecuteHelp(0, "Files\_tmphhp\DESKTRIALHTML.chm", "sSubject, 1")
                    END IF
                    [CODE/]

                    Figured it out. Have to make change in Sub

                    "IF nType THEN uCommand = nType ELSE uCommand = %HH_KEYWORD_LOOKUP" '%HH_DISPLAY_TOC

                    Also, used:

                    ExecuteHelp(0, "Files\_tmphhp\DESKTRIALHTML.chm", sSubject)

                    Thanks,

                    Brent

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


                    [This message has been edited by BRENT GARDNER (edited May 17, 2007).]

                    Comment


                    • #11
                      You can also use the last optional parameter to perform a keyword lookup:

                      Code:
                      ExecuteHelp(%NULL, "Files\_tmphhp\DESKTRIALHTML.chm", sSubject, %HH_KEYWORD_LOOKUP)
                      ------------------
                      kgpsoftware.com - Downloads
                      kgpsoftware.com - Development and Consulting
                      kgpsoftware.com | Slam DBMS | PrpT Control | Other Downloads | Contact Me

                      Comment


                      • #12
                        Kev,

                        Thank you for the information. You do very good work! Just wondering
                        if there is a way to only show Main control window(without the
                        TOC) when calling from ContextMenu? Was able to do in Winhelp.
                        Looked at options in Helpmaker, but either one or the other?

                        Thanks,

                        Brent

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


                        [This message has been edited by BRENT GARDNER (edited May 17, 2007).]

                        Comment


                        • #13
                          Hi Brent,

                          The easiest thing to do is to create two windows in your HtmlHelp project,
                          one tripane and one not. Then when you execute your HtmlHelp API call,
                          you can specify if it should use your tripane or single pane window:
                          Code:
                          HtmlHelp hWin, "MyHelp.chm::\\topic.htm>MyWindow", %HH_DISPLAY_TOPIC, 0
                          The other method is to create the HtmlHelp Window dynamically in your program
                          using the HH_WINTYPE UDT. Then call the HtmlHelp API with the %HH_SET_WIN_TYPE
                          equate.

                          Sincerely
                          Steve Rossell
                          PowerBASIC Staff


                          ------------------
                          Sincerely,

                          Steve Rossell
                          PowerBASIC Staff

                          Comment


                          • #14
                            Another question.

                            HTMLHELP.CHM is not the "top most" window, like winhelp was?
                            Is there a way to have the HTMLHELP.chm file always be the
                            top most window?

                            Changed my "dialog new hParent" to "dialog new 0" and removed
                            %WS_EX_TOPMOST and .chm file shows top most. Now something else
                            is probable fouled up. Scares me to make these changes, because
                            usually it fouls something else up. Trouble is, you usually
                            won't know until months down the road. Oh well! Fun, Fun

                            Thanks,

                            Brent

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


                            [This message has been edited by BRENT GARDNER (edited May 18, 2007).]

                            Comment


                            • #15
                              Hi Brent,

                              If you are creating the Window in your HtmlHelp project then in the .HHP (HtmlHelp Project) file where you declare the Windows ([WINDOWS] section), the 15th parameter describes the Windows Extended Styles and if this is value has the 4th bit set then the Window will have the top-most style applied to it.

                              Most Help development software will have a GUI interface to let you select the styles and extended styles of the HtmlHelp Window, so you do not have to edit/create the .HHP file by hand.

                              If you are creating your HtmlHelp Window dynamically in your program then your HH_WINTYPE UDT member of dwExStyles should contain the %HHWIN_PROP_ONTOP style.

                              Sincerely,
                              Steve Rossell
                              PowerBASIC Staff
                              Sincerely,

                              Steve Rossell
                              PowerBASIC Staff

                              Comment


                              • #16
                                Steve,

                                Thanks for the info on Top Most, but in my program with multiple
                                dialogs on top of each other, dwExstyle didn't seem to work.
                                Works the way I changed "hParent" to "0" and no "%WS_EX_TOPMOST"
                                though. So I am satisified on "top most" problem for the moment.

                                As far as displaying only main help window. I use only this code:

                                "ExecuteHelp(0, "Files\_tmphhp\DESKTRIALHTML.chm", sSubject)"

                                No nType, and seems to work. Only main window comes up when I
                                right click(CONTEXTMENT) or press F1, of Menu > Help.

                                Thanks everyone for all your help.

                                Brent


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


                                [This message has been edited by BRENT GARDNER (edited May 18, 2007).]

                                Comment

                                Working...
                                X