我创建了一个带有自定义许可证文件的WiX 3.5设置,方法是将其放入.wxs
文件中:
<WixVariable Id="WixUILicenseRtf" Value="License.rtf" />
这很有效,当我运行创建的.msi
文件时会显示链接
(我正在使用WixUI_InstallDir
Dialog Set)
现在我想在许可证文件中添加一个超链接
我只是通过在写字板中打开并粘贴http://mylink.com
(写字板自动将其转换为超链接)将链接放入文件中。
当我在WiX中编译它时,许可协议对话框显示如下链接:
<http://mylink.com>
我注意到这似乎与写字板自动创建超链接有关(见上文)
当我从许可证文件中的链接中删除http://
部分时,写字板不再将其识别为链接,并且在已编译的.msi
文件中,<
和{{1}在许可协议对话框中消失。
除了将链接放入没有>
部分的许可文件之外,我是如何摆脱额外的<
和>
的?
编辑:
好吧,也许当我使用“超链接”这个词时,我的想法不够 我的意思是:它不一定是一个真正的可点击的超链接 我只是希望我的网页的地址显示在许可证文件的顶部。
如果它只是作为文本的URL(不可点击),我会很好,但是我希望它在我输入时显示,而不是http://
。
问题是写字板一进入就自动将任何URL转换为超链接,因此我不知道如何获取许可协议对话框将其视为普通文本。
答案 0 :(得分:5)
Windows Installer不支持可滚动文本控件中的超链接。这就是链接未正确显示的原因。即使它是,当您单击它时也不会发生任何事情,因为Windows Installer不处理此事件。
可滚动文本控件中的超链接仅在您使用处理它的外部UI时才有效。
编辑:
如果您只想将某些文本显示为链接,通常的方法是将其设为蓝色并加下划线。正如您已经注意到Windows Installer未正确显示常规超链接。
如果要将链接显示为普通文本,只需使用普通文本编辑器(例如notepad.exe)打开RTF文件,然后删除超链接标记。只需按照普通文本格式,您就可以轻松找到要删除的标记。