生成一个dialog程序1,没有加入帮助,
为加入帮助,
1、生成一个同名的程序2,并将其hlp目录拷贝到1相应目录下,更改其Hpj,cnt中涉及相对目录的地方。
2、
程序1中添加 ON_COMMAND(ID_HELP, CWinApp::OnHelp),在OnDestroy中加入WinHelp(0L, HELP_QUIT);
将hpj文件添加到工程中,
仿照2建立help files目录,加入对应rtf,cnt文件。编译程序1还是不能想程序2那样自动生成一个hlp文件,是我哪里改的不彻底,还是需要其他的设置,还请大家帮忙?

解决方案 »

  1.   

    那你就用HELP WORKSHOP等制作HLP的软件将你的HPJ和CNT等文件编译成HLP就可以了,为什么非要在VC下自动生成呢?那你程序2是怎么得到的,你就完全按照程序2的结构编写就可以了
      

  2.   

    建议用QuickChm等工具作成CHM格式帮助文件在程序里调用。
      

  3.   

    我就是想知道什么地方的设置可以自动生成hlp文件。
      

  4.   

    在 OnInitDialog 修改显示风格,加入上、下文HLP帮助显示.BOOL HelpDialog::OnInitDialog() 
    {
        //blah blah blah
        //blah blah blah
        ModifyStyleEx(0, WS_EX_CONTEXTHELP);
        return CDialog::OnInitDialog();
    }
    重载OnHelpInfo(...),用显示相关帮助信息BOOL HelpDialog::OnHelpInfo(HELPINFO* pHelpInfo) 
    {
        short state = GetKeyState (VK_F1);
        if (state < 0)   // F1 key is down, get help for the dialog
            return CDialog::OnHelpInfo(pHelpInfo);
        else
        {    // F1 key not down, get help for specific control
            if (pHelpInfo->dwContextId)
                WinHelp (pHelpInfo->dwContextId, 
                    HELP_CONTEXTPOPUP);
            return TRUE;
        }
    }