zl程序教程

您现在的位置是:首页 >  其它

当前栏目

为什么不能在气泡提示中防止超链接

为什么 不能 提示 防止 超链接 气泡
2023-09-14 09:10:45 时间

蝎子

气泡提示,非常适用于需要发送桌面通知的场景,对于提升应用程序的使用的体验十分有帮助,但是系统提供的气泡提示控件,不允许开发者放置超链接到提示文本中 ,为什么呢?请听我给你翻译翻译。

短答案

因为Win32 SDK中,根本就没有一个所谓的”NIF_PARSELINKS”标志位。

长答案

当气泡提示功能首次被开发时,根本就没有实现嵌入超链接的功能。因而,应用开发者可以随意地在气泡提示文本中放入不安全的内容,因为控件压根就不会执行它们,它们在某种意义上看来,是”死的”。所以,举个例子,一个杀毒软件扫描器在扫描了一个文件并确认此文件安全时,会弹出一个气泡提示:文件XXX已完成扫描,安全。

现在,我们假设,系统允许开发者在气泡提示中放入超链接。恶意代码开发者可能会编写如下的网页代码:

然后,将上面的代码保存为一个名为”重要资料.html”的文件,并作为邮件附件发送给用户。

用户收到了邮件并保存了附件,用户十分小心,在打开附件之前使用了杀毒软件对附件进行了扫描。杀毒软件执行扫描,并未发现任何威胁,就给出了一个气泡提示:
文件”重要资料.html”已完成扫描,安全。
注意,上面提示中的重要资料.html是一个超链接。

用户可能会觉得:哇,真是方便啊,我可以直接点击这个超链接来打开文档。
然后悲剧发生了,超链接里的恶意代码被触发,导致用户的磁盘被格式化。

有开发者可能会问了:”你们可以加上一个NIF_PARSE