1、在App类 构造函数中添加

EnableHtmlHelp();

2、在Frame类中,添加消息影射:

ON_COMMAND(ID_HELP_FINDER, CFrameWnd::OnHelpFinder)
 ON_COMMAND(ID_HELP, CFrameWnd::OnHelp)
 ON_COMMAND(ID_CONTEXT_HELP, CFrameWnd::OnContextHelp)
 ON_COMMAND(ID_DEFAULT_HELP, CFrameWnd::OnHelpFinder)

3、修改resource.h的属性:

命令行:
echo // 生成的帮助映射文件。使用者为NdtSampProc.HHP. > "hlp/HTMLDefines.h"
echo. > "hlp/HTMLDefines.h"
echo // 命令(ID_* 和 IDM_*) >> "hlp/HTMLDefines.h"
makehm /h ID_,HID_,0x10000 IDM_,HIDM_,0x10000 "$(InputFileName)" >> "hlp/HTMLDefines.h"
echo. >> "hlp/HTMLDefines.h"
echo // 提示(IDP_*) >> "hlp/HTMLDefines.h"
makehm /h IDP_,HIDP_,0x30000 "$(InputFileName)" >> "hlp/HTMLDefines.h"
echo. >> "hlp/HTMLDefines.h"
echo // 资源(IDR_*) >> "hlp/HTMLDefines.h"
makehm /h IDR_,HIDR_,0x20000 "$(InputFileName)" >> "hlp/HTMLDefines.h"
echo. >> "hlp/HTMLDefines.h"
echo // 对话框(IDD_*) >> "hlp/HTMLDefines.h"
makehm /h IDD_,HIDD_,0x20000 "$(InputFileName)" >> "hlp/HTMLDefines.h"
echo. >> "hlp/HTMLDefines.h"
echo // 框架控件(IDW_*) >> "hlp/HTMLDefines.h"
makehm /h /a afxhh.h IDW_,HIDW_,0x50000 "$(InputFileName)" >> "hlp/HTMLDefines.h"

说明:
正在生成帮助编译器的映射文件...

输出:
hlp/HTMLDefines.h

4、在help目录中,利用HTML Help Workshop建立一个与项目名称相同的帮助项目,并添加到解决方案中。

5、设置帮助项目的属性:

命令行:
start /wait hhc "hlp/ProjectName.hhp"
if not exist "hlp/ProjectName.chm" goto :HelpError
copy "hlp/ProjectName.chm" "$(OutDir)/ProjectName.chm"
goto :HelpDone
:HelpError
echo hlp/ProjectName.hhp(1) : error:创建帮助文件时遇到问题
echo.
:HelpDone
echo.

说明:
正在生成帮助文件...

输出:
$(OutDir)/$(ProjectName).chm

附加依赖项:
hlp/HTMLDefines.h

6、剩下的工作就不需要多说了吧,菜单工具条添加相应项,编写html帮助文档内容。

原文地址 http://www.server110.com/html/201401/4838.html

MFC单文档程序添加HTML帮助支持的更多相关文章

  1. VC-基础:MFC单文档程序架构解析

    MFC单文档程序架构解析 这里我以科院杨老师的单文档程序来分析一下MFC单文档的程序架构,纯属个人见解,不当之处烦请指教! 首先我们了解到的是 图(一) theApp 是唯一一个在程序形成的时候就存在 ...

  2. MFC单文档程序架构解析

    MFC单文档程序架构解析 MFC单文档程序架构解析 这里我以科院杨老师的单文档程序来分析一下MFC单文档的程序架构,纯属个人见解,不当之处烦请指教! 首先我们了解到的是 图(一) theApp 是唯一 ...

  3. MFC单文档程序结构

    MFC单文档程序结构三方面: Doc MainFrame View

  4. MFC学习(七) 单文档程序

    1 MFC单文档程序的主要类 (1)文档类(Document) 即应用程序处理的数据对象,文档一般从 MFC 中 CDocument 中派生.CDocument 类用于相应数据文件的读取以及存储 Cv ...

  5. MFC单文档

    一.创建并运行MFC单文档程序 1.创建单文档程序 这里使用的是VS2017.首先,打开VS2017,选择文件->新建->项目,然后选择Visual C++ -> MFC /ATL& ...

  6. VC++ MFC单文档应用程序SDI下调用glGenBuffersARB(1, &pbo)方法编译通过但执行时出错原因分析及解决办法:glewInit()初始化的错误

    1.问题症状 在VC++环境下,利用MFC单文档应用程序SDI下开发OpenGL程序,当调用glGenBuffersARB(1, &pbo)方法编译通过但执行时出错,出错代码如下: OpenG ...

  7. MFC 单文档中动态添加菜单项和响应菜单事件

    新建一个单文档程序 在查看菜单项中增加两个子菜单,分别为隐藏工具栏(ID_HIDE),新建菜单(ID_NEWMENU) 在Resource.h中增加一个ID_NEWMENU宏 #define ID_N ...

  8. OpenCASCADE(一) VS2017+OpenCASCADE+MFC 下载配置安装运行单文档程序画个基本图形

    原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/12368154.html 一.下载OpenCASCADE 官网下载是: http://www.o ...

  9. MFC单文档分割区(CSplitterWnd)

    用VS08程序向导,单文档程序,默认设置生成的.工程名为3view; 其中默认生成的视图类CMy3viewView,对应3viewView.h,3viewView.cpp; 在Resourse Vie ...

随机推荐

  1. 哈哈,修改PHP5.4.44语法成功

    作为一个脚本语言,面向对象的继承基本上不想用到,强类型比较也想使用==直接比较.作为专业程序员不想让PHP解释器代劳过多. 修改了这个MOD版本,效果杠杠的.

  2. JavaScript动态显示当前时间

    JavaScript动态显示当前时间: 2016年01月04日  时间:16:58:32  星期一 <span id="timejs"></span> &l ...

  3. 十三、mysql 分区之 RANGE &amp;&amp; LIST

    .RANGE 分区 创建实例: CREATE TABLE EMP ( id int not null primary key auto_increment, name ) not null defau ...

  4. iOS搜索框UISearchBar

    当你在seachBar中输入字母之前的时候,只是用鼠标选中searchBar的时候,如图 终端输出截图如下:(这个时候调用先shouldBeginEditing,之后调用didBeginEditing ...

  5. C#转发Post请求,包括参数和文件

    /// <summary> /// 转发Post请求 /// </summary> /// <param name="curRequest">要 ...

  6. Linux内核第八节 20135332武西垚

    第一种分类: I/O-bound:频繁进行I/O,并且需要花费很多时间等待I/O完成 CPU-bound:计算密集,需要大量的CPU时间进行运算 第二种分类: 批处理进程:不必与用户交互,常在后台进行 ...

  7. 删掉centos原有的openjdk并安装sun jdk

    [环境变量]删掉centos原有的openjdk并安装sun jdk   一.卸载原有openjdk rpm -qa | grep java 之后,将展示出来的全部卸载掉,我这里是5个 rpm -e ...

  8. 数据库别名AS区别

    Oracle之别名小结 MySQL表别名.字段别名注意事项 字段别名:可加 as  ,也可以不加,可以加单|双引号,也可以不加: 表别名:可加 as ,也可以不加,但是一定不能加单|双引号! Orac ...

  9. WhereHows前后端配置文件

    前端: # This is the main configuration file for the application. # ~~~~~ # Secret key # ~~~~~ # The se ...

  10. dirname(__FILE__)