.url文件无法加载图标

7

我开发了一个servlet,它生成一个.url文件并将其发送给用户。目标是让用户通过双击下载的.url文件访问Web应用程序,而不需要输入用户名和密码数据。.url文件的格式如下:

[DEFAULT]
BASEURL=http://{SERVER}/login?action=directAccess&userName={USERNAME}&passw={ENCRIPTED_PASSWORD}
[InternetShortcut]
URL=http://{SERVER}/login?action=directAccess&userName={USERNAME}&passw={ENCRIPTED_PASSWORD}
IconIndex=0
IconFile=http://{SERVER}/resources/favicon.ico 

我知道这个解决方案只适用于Windows操作系统,但我对此没有问题,因为所有使用Web应用程序的客户端都使用Windows作为操作系统。
问题在于,在某些情况下(Windows 7或更高版本的操作系统),下载的.url文件不会加载文件中指定的图标,因此显示的图标是默认浏览器图标。是否有任何解决方案?
非常感谢!
4个回答

4

我认为这个问题是基于Windows 7和更新版本使用.website文件而不是.url文件。以下是两者都使用google.com的示例。

.url语法:

[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,11
[InternetShortcut]
IDList=
URL=https://www.google.com/

.网站语法:

[{000214A0-0000-0000-C000-000000000046}]
Prop3=19,11
Prop4=31,Google
[InternetShortcut]
IDList=
URL=https://www.google.com/
IconFile=https://www.google.com/favicon.ico
IconIndex=1
[{A7AF692E-098D-4C08-A225-D433CA835ED0}]
Prop5=3,0
Prop9=19,0
[{9F4C2855-9F79-4B39-A8D0-E1D42DE1D5F3}]
Prop5=8,Microsoft.Website.9CB8E698.C9795A8C

.url文件会下载网站的/favicon.ico图标(如果有),如果没有,则会使用你默认应用程序的http图标(如Chrome或IE的图标等)。而.website文件可以指定要使用的图标,包括提供高质量的图标,这些图标不会包含在favicon.ico文件中。使用.website文件的缺点是它会打开IE而不是用户的默认Web浏览器。好处是你可以获得自定义图标和可能更多的功能,因为你可以有跳转列表、徽章等。 IE Dev Center


1
谢谢您的评论ManOVision,但是这个答案并没有解决我的问题。我需要一个图标来打开用户的默认网络浏览器。不过,了解到您提供的信息还是很有用的。 - Alejandro Ruiz Arias

2
< p > IconFile 需要在文件系统中可访问。 也就是说,要么找到一种在本地下载它的方法(例如,在安装企业软件包时),要么使其在文件共享中可用(虽然是远程的,但在Windows中以特殊方式处理)。 这个巧妙的技巧将导致:


IconFile=\\{SERVER}\resources\favicon.ico 

它假设相同的Web服务器可在线上使用(或在您的Intranet内,这取决于目标受众),并且具有名为“resources”的文件共享(需要适当的共享和文件权限以及防火墙调整),指向由所引用的HTTP地址提供的相同位置。
参考:使用自定义图标分发Internet快捷方式文件

1

0

对我而言,一切都始于删除Internet Explorer。然后Chrome无法像以前那样加载URL。解决方案是重新安装Internet Explorer。将URL与Explorer关联起来,最后回到Chrome。选择使用Explorer或Chrome打开以更改这些关联。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接