在这里看过一些这方面的贴子了,不过还是有问题。
运行帮助文件,首先需要定位帮助文件的位置。
假如把帮助文件(.chm)放在程序路径下,那么使用的 API 函数 GetModuleFileName(),定位程序路径和取文件的完整路径文件名:
CString appPath;
GetModuleFileName(NULL, appPath.GetBuffer(MAX_PATH), MAX_PATH);
//注:使用该API函数得到的是程序文件完整路径文件名,去掉文件名后才是路径。
appPath.ReleaseBuffer();
int n = appPath.ReverseFind('\\');
CString helpFile;
helpFile = appPath.Left(n);
TCHAR c = helpFile.GetAt(n - 1);
if(c == '\\') helpFile += "sashelp.chm";
else helpFile += "\\sashelp.chm"; //通过 HtmlHelp 调用帮助文件(.chm)的程序代码如下: HWND hwnd=HtmlHelp(NULL,(LPCSTR)helpFile,HH_DISPLAY_TOPIC,NULL);问题是:
通过以上程序,为什么不能得到当前程序下的chm文件,而得到的却是D://winnt/help/下的文件????
运行帮助文件,首先需要定位帮助文件的位置。
假如把帮助文件(.chm)放在程序路径下,那么使用的 API 函数 GetModuleFileName(),定位程序路径和取文件的完整路径文件名:
CString appPath;
GetModuleFileName(NULL, appPath.GetBuffer(MAX_PATH), MAX_PATH);
//注:使用该API函数得到的是程序文件完整路径文件名,去掉文件名后才是路径。
appPath.ReleaseBuffer();
int n = appPath.ReverseFind('\\');
CString helpFile;
helpFile = appPath.Left(n);
TCHAR c = helpFile.GetAt(n - 1);
if(c == '\\') helpFile += "sashelp.chm";
else helpFile += "\\sashelp.chm"; //通过 HtmlHelp 调用帮助文件(.chm)的程序代码如下: HWND hwnd=HtmlHelp(NULL,(LPCSTR)helpFile,HH_DISPLAY_TOPIC,NULL);问题是:
通过以上程序,为什么不能得到当前程序下的chm文件,而得到的却是D://winnt/help/下的文件????
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货