在VC.net中如何加入HtmlHelp.chm帮助文件?

suwenk 2004-06-30 04:12:52
很郁闷 找到的都是在vc6中如何加的。
在vc.net中试了试 编不通
请高手指教
...全文
121 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
tangshiping 2004-07-01
  • 打赏
  • 举报
回复
winexec, shellexecute,createprocess都可以吧
Kudeet 2004-07-01
  • 打赏
  • 举报
回复
给你看看参数的完整说明:

关于ShellExecute函数的中文说明

ShellExecute 函数打开或打印一个指定的文件。文件可以是可执行文件也可以是一个文档。请查看关于ShellExecuteEx的帮助。
HINSTANCE ShellExecute(
HWND hwnd, // 主窗口句柄
LPCTSTR lpOperation, // 字符串指针,指定要执行的操作
LPCTSTR lpFile, // 字符串指针,指定文件名或目录名
LPCTSTR lpParameters, // 字符串指针,指定传给可执行文件的参数  
LPCTSTR lpDirectory, // 字符串指针,指定缺省目录
INT nShowCmd // 文件显示模式
);
参数
hwnd
指定一个主窗体。

lpOperation
一个非空的字符串指针,指定操作方式。有以下操作方式可用
"open"
该函数打开由lpFile指定的文件,文件可以是一个可执行文件,也可以是文档文件,也可以是一个要打开的目录。
"print"
该函数打印由lpFile指定的文件。文件应该是一个文档文件。如果是一个可执行文件则运行这个文件就象指定用"opne"操作方式一样。
"explore"
函数打开浏览由lpFile指定的目录窗口。
如果该参数为NULL,则相当于使用"open"操作方式。

lpFile
一个非空字符串指定要打开或打印的文件,或者是要打开浏览的目录名。该函数可以打开一个可执行文件或一个文档文件,也可以打印一个文件。

lpParameters
如果lpFile指定一个可执行文件,则lpParameters 是一个指向非空字符串的指针,代表要传给这个应用程序的参数。
如果lpFile指定一个文档文件,则其应该为空。

lpDirectory
非空字符串指定缺省目录

nShowCmd
如果lpFile指定一个可执行文件,nShowCmd指定应用程序运行时如何显示。可以是下列的值:

值    意义
SW_HIDE 隐藏窗体,激活另一个窗口。
SW_MAXIMIZE 最大化显示
SW_MINIMIZE 最小化显示
SW_RESTORE 正常状态显示
SW_SHOW 激活并以其当前位置尺寸显示
SW_SHOWDEFAULT 以线程创建时传进的参数进行显示
SW_SHOWMAXIMIZED 激活并最大化显示
SW_SHOWMINIMIZED 激活但以最小化方式显示
SW_SHOWMINNOACTIVE 最小化显示,原来焦点窗体不变active.
SW_SHOWNA 以其当前状态显示
SW_SHOWNOACTIVATE
SW_SHOWNORMAL 以正常方式显示。
如果lpFile指定的是文档文件,则nShowCmd应该为0。

返回值
如果成功,返回当前运行应用程序句柄或DDE服务器句柄
如果失败,返回值小于等32,代表下面的意义。

值   意义
0 操作系统内存或资源不够
ERROR_FILE_NOT_FOUND 文件没找到
ERROR_PATH_NOT_FOUND 指定路径不对
ERROR_BAD_FORMAT 不是合法的应用程序
SE_ERR_ACCESSDENIED 操作系统拒绝访问此文件
SE_ERR_ASSOCINCOMPLETE 文件名关联不完整或非法
SE_ERR_DDEBUSY 不能完成DDE事务,因为正在处理其它DDE事务  
SE_ERR_DDEFAIL DDE事务失败
SE_ERR_DDETIMEOUT 请示超时
SE_ERR_DLLNOTFOUND 没找到指定的动态链接库
SE_ERR_FNF 指定文件没找到。
SE_ERR_NOASSOC 没有与当前文件类型关联的应用程序
SE_ERR_OOM 内存不足
SE_ERR_PNF 路径没找到
SE_ERR_SHARE 共享错误

备注
由参数lpFile指定的文件可以是文档文件或是可执行文件。如果是文档文件则可以打开或打印文件,由lpOperation参数指定。如果是可执行文件则只能打开,即使lpOperation指定为"print".
You can use ShellExecute to open or explore a shell folder. To open a folder, use either of the following calls:
可以使用该函数打开或浏览一个文件夹:
ShellExecute(handle, NULL, path_to_folder, NULL, NULL, SW_SHOWNORMAL);

ShellExecute(handle, "open", path_to_folder, NULL, NULL, SW_SHOWNORMAL);

浏览文件夹:
ShellExecute(handle, "explore", path_to_folder, NULL, NULL, SW_SHOWNORMAL);
如果 lpOperation 为 NULL,函数打开这个文件如果为"open" 或 "explore",则函数会打开一个窗口
打开一个网叶:
ShellExecute(NULL,"open","http://www.sina.com.cn",NULL,NULL,SW_SHOW);
modena 2004-07-01
  • 打赏
  • 举报
回复
HtmlHelp在主窗口中应用,第一个参数没有
HtmlHelp还可以在CWinApp中应用,第一个参数需要一个HWND
zhangnanonnet 2004-07-01
  • 打赏
  • 举报
回复
和VC一样吧
这样就可以了
ShellExecute(NULL, "open", filepath, NULL, NULL, SW_SHOWNORMAL);
filepath就是帮助文件的路径
suwenk 2004-07-01
  • 打赏
  • 举报
回复
ShellExecute()的方法好用。
modena(非云) 的方法,编译时说HtmlHelp参数不对。不知道为什么,是调用的函数问题?还是没有加载某个头文件?
bremanb 2004-06-30
  • 打赏
  • 举报
回复
ShellExecute(NULL, "open", "c:\\xxx.chm", NULL, NULL, SW_SHOW );
modena 2004-06-30
  • 打赏
  • 举报
回复
HWND hwnd =
HtmlHelp(
GetDesktopWindow(),
"c:\\Help.chm::/Intro.htm>Mainwin",
HH_DISPLAY_TOPIC,
NULL) ;
modena 2004-06-30
  • 打赏
  • 举报
回复
.net是支持HtmlHelp的啊!
lixiaosan 2004-06-30
  • 打赏
  • 举报
回复
你是想怎么添加
在菜单的消息函数中,添加以下代码
ShellExecute(NULL, "open", "c:\\xxx.chm", NULL, NULL, SW_SHOW );
Kudeet 2004-06-30
  • 打赏
  • 举报
回复
直接用ShellExecute();运行也不行吗

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧