使用Doxygen输出chmcmd会产生伪造的错误消息

时间:2016-11-06 07:50:03

标签: html doxygen chm

我正在使用chmcmd从Doxygen文件创建.chm文档。 后者向我提供(假的)错误消息,如

  

错误:锚点[HTML页面,从包含@page的文件生成]#[@ section或@subsection with label,all in all file] undefined;首先使用[HTML页面,从包含@page的文件生成]

在HTML文件中,我看到了行

<li><a class="el" href="User_Guide.html#USER_GUIDE_SETUP_AND_DATA_FLOWS">SETUP AND DATA FLOWS</a><ol type="a">

<h1><a class="anchor" id="USER_GUIDE_SETUP_AND_DATA_FLOWS"></a>
SETUP AND DATA FLOWS</h1>

在我看来,应该没问题。错误消息是假的,因为 .html文件和.chm文件都可以正常工作。它似乎是无害的,但产生相当大的噪音,我担心,我会错过一些真正的错误。

我能反对吗?

2 个答案:

答案 0 :(得分:0)

特殊字符会导致HTML帮助编译器出现问题(请参阅附件中的链接)。我知道这不是你描述的问题。我没有使用ChmCmd,所以我很遗憾无法重现您的错误消息。

但是,请按照帮助&amp; amp;手动论坛似乎提供了一些信息Linking to anchors in chm topics from C#。请搜索:

  

Tim Green的后续行动:请注意,如果相关主题是CHM中的第一个主题,它是CHM系统中的已知错误并且是不可避免的。如果它本身而不是章节,它就不会与主题同步。这一直是CHM中的问题,微软从未纠正过它。 TOC与CHM中的主题的同步也超出了帮助和帮助。手动控制;它完全由微软的观众控制。

所以,我认为&#34; ...首先在错误消息中使用...&#34; 与此主题中的问题相关。

来自HelpwareGroup网站的更多信息:

CHM Compiler crashed during compilation

HTMLHelp CHM Frequently Asked Questions

BTW,C#开发人员可能会发现他们的CHM格式的文​​档和电子书无法打开,因为他们将CHM文件存储在诸如C:\ E-books \ C#\&#39;等目录中。哈希字符表示HTML中的锚点,因此CHM查看器无法正确解析路径并检索内容。要解决此问题,请删除&#39;#&#39;目录名称中的(哈希)字符。另外,请避免使用&#39;?&#39;,&#39;&amp;&#39;和&#39; +&#39;目录名称中的字符。

答案 1 :(得分:0)

这看起来不像chmcmd错误。 &#34; @页面&#34;或&#34; @ section&#34;对chmcmd毫无意义。 Chmcmd没有产生任何帮助,它只是编译,所以从这个角度来看,消息也不符合逻辑。

为了以防万一,我在源头上确保了,并没有点击。

所以可能它不是chmcmd,但可能错误来自doxygen html-for-chm输出模块。