短篇小说:我可以用Doxygen生成一个CHM文件。启动CHM文件,我发现内容和索引选项卡确实列出了这些类的页面,名称空间,类和成员。但是,单击“内容”和“索引”列表中的项目不会显示任何内容。
我在使用Windows 7 Professional SP1 64位的计算机上。
我使用Doxywizard在我的代码上运行Doxygen版本1.8.9.1。它正确生成HTML输出;页面,命名空间,类和成员出现在文档中。
然后我还想将HTML转换为压缩的HTML(CHM)文件。
我从Microsoft网站(https://msdn.microsoft.com/en-us/library/windows/desktop/ms669985(v=vs.85).aspx)下载了Microsoft HTML Help Workshop版本1.31(即htmlhelp.exe
版本4.74.8703)。我运行了安装程序。随着安装程序的进行,出现了一条弹出消息:
此计算机已有更新版本的HTML帮助。
但是,安装成功完成。并且,我告诉它安装hhc.exe
程序。
我现在指定这些相关的Doxygen设置:
当我再次运行Doxygen时,会报告错误:
error: failed to run html help compiler on index.hhp
在预期的位置生成Foo.chm
文件。但是,如上所述,它缺少很多内容。
我尝试在Doxygen生成的HHP文件上手动运行hhc.exe
。它并不表示任何错误。
C:\Program Files (x86)\Microsoft\HTML Help Workshop>hhc c:\test\html\index.hhp
Microsoft HTML Help Compiler 4.74.8702
Compiling c:\test\html\Foo.chm
Compile time: 0 minutes, 3 seconds
292 Topics
3,855 Local links
83 Internet links
0 Graphics
Created c:\test\html\Foo.chm, 259,580 bytes
Compression decreased file by 1,077,915 bytes.
但是,结果是相同的:Foo.chm
文件缺少内容。
我随后发现我在计算机上安装了另一个HTML Help Workshop。但是,hhc.exe
是完全相同的版本。所以,这不太可能是问题。
您能否建议我还可以尝试将所有文档内容显示在CHM文件中?
答案 0 :(得分:5)
当我看到这个问题时(html存在并且chm有内容但内容不可见),这是因为Windows安全已经“阻止”了chm文件。要查看这是否是您遇到的问题,请尝试以下方法:
(我没有在本地生成的doxygen .chm文件中遇到此问题,但我希望您的描述可以解决您的问题。)
答案 1 :(得分:2)
在你的doxyfile中,将hhc.exe
的路径放在双引号中,因为它包含空格。
或者甚至更好,不要使用带空格的路径。
答案 2 :(得分:2)
基本问题是CHM文件位于映射的网络驱动器上。
当我将CHM文件复制到计算机上的物理驱动器时,将显示所有内容。