我是这样运行帮助文件的:
Help.ShowHelp(null, @"help.chm", topicKeyword);
但topicKeyword
是一个主题的通用名称,在某些情况下,这个主题可能不存在于help.chm文件中。因此,我首先想要检查这个主题是否存在,否则用户将会得到带有错误页面/主题的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与你的列举进行比较。