4
我跑我的幫助文件中這樣說:如何檢查* .chm文件中是否存在特定主題?
Help.ShowHelp(null, @"help.chm", topicKeyword);
但topicKeyword
爲主題的通用名稱,並在某些情況下,這個話題可能不是在的help.chm文件存在。我想首先檢查這個主題是否存在,否則用戶將得到chm文件,但是有錯誤頁面/主題。
我跑我的幫助文件中這樣說:如何檢查* .chm文件中是否存在特定主題?
Help.ShowHelp(null, @"help.chm", topicKeyword);
但topicKeyword
爲主題的通用名稱,並在某些情況下,這個話題可能不是在的help.chm文件存在。我想首先檢查這個主題是否存在,否則用戶將得到chm文件,但是有錯誤頁面/主題。
您可以使用jedwing CHMLib來枚舉CHM文件中的主題。例如:
static int CallBack(struct chmFile *h, struct chmUnitInfo *pUI, void *context)
{
printf("%s\n", pUI->path);
return CHM_ENUMERATOR_CONTINUE;
}
int main()
{
chmFile *pFile = chm_open("<Path to your CHM file>");
if (pFile)
{
chm_enumerate(pFile, CHM_ENUMERATE_NORMAL, CallBack, 0);
chm_close(pFile);
}
return 0;
}
一旦你枚舉了主題,你可以根據你的枚舉檢查候選url。
本地api(HtmlHelp())是原始的。也許是HH_KEYWORD_LOOKUP命令。沒有多大幫助,用戶仍然沒有任何有用的東西來看待。 –