如何在 chm 中为 dxf 提供下载 link

How to provide a download link for a dxf inside a chm

我有 HTML 编译成 chm 的代码,偶尔我想包含一个 link 来直接下载文件...例如一个小的二进制绘图文件(扩展名 .qid 在我的应用程序中)用作 chm 教程的示例数据。通过提供这样的 link,我一直在为小绘图文件做这件事...

<a href="relativepath/some.qid" title="whatever">some text</a>

但我目前的问题是我有一些要在本教程中使用的示例 dxf,当我像这样提供下载时 link...

<a href="relativepath/some.dxf" title="whatever">some text</a>

...然后我得到一个 link 好的,但是当我点击它时,它会将 dxf 内容内嵌为文本,而不是为路径中的某个文件弹出下载另存为对话框像 mk:@MSITStore:wherever.dxf

现在我查看了 HTML 属性 doco,发现了一个 'download' 属性,该属性旨在强制 link 下载,但没有任何区别。我使用了这个语法...

<a href="relativepath/some.dxf" title="whatever" download>some text</a>

...生成了带有 link 的 chm 但忽略了属性 'download'.

如何强制 href link 指向 dxf 文件的下载对话框?

请注意 CHM 已有 20 年历史。 hh.exe 是在 Windows 上的 HTMLHelp 可执行文件并与 *.CHM 文件关联。它只是一个使用 HTML 帮助 API 的 shell,实际上只是在 HTML 帮助查看器 HTML 中托管基于旧版 Internet Explorer 的浏览器 window window。这不是基于微软的浏览器EDGE!

您知道,HTML (!) 属性指示新浏览器下载 linked 资源而不是打开它。 但是 - Microsoft Internet Explorer 不支持下载属性。

我也从单个本地 HTML 文件测试了 linking。其他浏览器如 Firefox、Chrome 和 EDGE 也始终将 link 作为文本文件打开到本地 *.DXF 文件。

嵌入式(编译成 CHM 文件)*.dxf 文件也会发生这种情况。

因此,您需要创建一个 link 到 ZIP 文件,例如some.dxf.zip相反。

更新:

当 *.DXF 文件未嵌入并存储在服务器上时,此方法有效:通过以旧方式使用它来测试您的需要

<a href="http://www.help-info.de/files_download/Nikon_D90_Camera.dxf">test.dxf download</a>