2016-11-06 40 views
0

我使用chmcmd从Doxygen文件创建一个.chm文档。 后者送给我(假的)错误信息,如使用Doxygen输出chmcmd产生假错误消息

Error: Anchor [HTML page, generated from a file containing @page]#[a @section or @subsection with label, all in the same file] undefined; first use [HTML page, generated from a file containing @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文件都可以正常工作。它似乎是无害的,但会产生相当大的噪音,我恐怕会错过一些真正的错误。

我可以做些什么反对吗?

回答

0

这看起来不像chmcmd错误。 “@page”或“@section”对chmcmd没有任何意义。 Chmcmd没有产生任何帮助,只是编译,所以从这个角度来看,消息也不合逻辑。

为了以防万一,我对源码进行了确认,并没有命中。

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

0

特殊字符使HTML帮助编译器出现问题(请参阅附加链接)。我知道这不是你所描述的问题。我不使用ChmCmd,所以我不能重现你的错误信息。

但是,以下线程来自帮助&手册论坛似乎给出了一些信息Linking to anchors in chm topics from C#。在您的错误信息

Follow-up by Tim Green: Note that if the topic in question is the first topic in the CHM that's a known bug in the CHM system and unavoidable. It just doesn't synchronize with the topic if its on its own and not in a chapter. That's always been an issue in CHM and Microsoft has never corrected it. The synchronization of the TOC with the topics in CHM is also beyond Help & Manual's control; it's entirely controlled by Microsoft's viewer.

所以,我认为“......第一次使用...”是关系到这个线程意味着问题:请搜索。

从我们HelpwareGroup网站在一些进一步的信息:

CHM Compiler crashed during compilation

HTMLHelp CHM Frequently Asked Questions

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

+0

感谢您的回复,我正在记录C++,并使用Doxygen输出,而无需编辑。在我的帖子中我所看到的这两行似乎是完美的。根据后续,它看起来像chmcmd太完美实现CHM系统:)。 – katang

+0

@katang是的,HTML锚链接对于CHM来说干净并且可以。 –