chm文档,大家都不会陌生,很多软件的帮助文档就是chm格式的。我们自己在开发程序的时候,也需要对外提供帮助文档,为了方便用户,经常在软件中就可以打开帮助文档,那么如何只允许显示唯一一个帮助文档呢?
1、认识hh.exe
Windows系统下,专门用于打开chm格式文档的程序。
2、打开chm的代码
QString fileName = qApp->applicationDirPath() + "//help.chm";
QFileInfo inf(fileName);
if(inf.exists()){
QString filePath = QString("hh.exe %1").arg(fileName);
QProcess proc;
proc.start(filePath);
}
3、定位到某页面
- 对应的命令:
“hh.exe help.chm::/4.html” - 如何知道页面的地址:
在本地手动打开CHM帮助文档,然后再对应的页面,鼠标右键>属性,就可以看到该页面对应的链接地址:
4、实现只允许打开一个chm文档
思路:把QProcess设为成员或者静态变量,在启动新的外部程序之前,先执行close函数。
QString fileName = qApp->applicationDirPath() + "//FC2000.chm";
QFileInfo inf(fileName);
if(inf.exists()){
QString filePath = QString("hh.exe %1").arg(fileName);
static QProcess proc;
proc.close();
proc.start(filePath);
}
5、注意事项
注意:使用start启动的外部程序,将随着主程序的退出而退出。
关于QProcess的一些总结:https://blog.csdn.net/hellokandy/article/details/123520974
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)