【发布时间】:2010-03-11 18:24:00
【问题描述】:
我正在尝试在网页上创建一些内容,以允许我的用户创建桌面快捷方式。因为我的用户并不精通技术,所以我想避免让他们尝试拖放。
有没有一种方法可以在网页上创建一个按钮(使用 JavaScript 或 .Net)来自动为用户创建桌面快捷方式?¡
【问题讨论】:
标签: .net javascript desktop-shortcut
我正在尝试在网页上创建一些内容,以允许我的用户创建桌面快捷方式。因为我的用户并不精通技术,所以我想避免让他们尝试拖放。
有没有一种方法可以在网页上创建一个按钮(使用 JavaScript 或 .Net)来自动为用户创建桌面快捷方式?¡
【问题讨论】:
标签: .net javascript desktop-shortcut
简单的方法:使用浏览器提供的功能
在 Firefox 中,将链接拖放到桌面会在 Windows 7 中创建一个快捷方式。我确信所有或大多数主流浏览器都可以在大多数平台上执行此操作。只需为您的用户指明正确的方向,也许可以通过为他们提供自定义的分步说明。
您可以将链接设置为易于识别、拖放的巨大区域。不需要它只是一个带下划线的文本。
在我看来,这是唯一值得走的路。
艰难的道路:自己编程
我认为创建桌面链接不能使用 JavaScript 完成 - 会有太多的安全限制阻止它。
对于 Windows,我认为最接近的方法是在服务器端生成快捷方式 .lnk 文件,并提供这些文件供下载。虽然这不是微不足道的,而且微软没有记录它的结构。有这样的非官方指南:The Windows Shortcut File Format
您可以通过在本地系统上创建文件并提供下载来绕过生成文件。如果您使用绝对网址,它可能会起作用 - 您必须尝试一下。不要忘记在各种系统上进行测试:95、98、XP、Vista、7 ....
我确信 Mac OS 和各种 Linux 桌面上存在等效的快捷方式格式,但我不知道。
【讨论】:
beforeinstallprompt为Web应用程序创建快捷方式。
不,您的用户必须具备足够的技术能力,才能授予嵌入在页面上的脚本或组件高级权限。 (当然,这主要意味着说“是”,但会出现一个看起来很吓人的提示。如果他们收到了关于该主题的任何建议,他们会说“不”。)
您可以使用已签名的 Java 小程序等来执行此操作(this question 与此讨论相关;基本上您想在他们的系统上创建一个文件),但是您的用户允许他们以高权限运行的几率较低(我说过)他们能够处理拖放。
我认为我从来没有想过拖放是一种技术娴熟的操作。 :-)
【讨论】:
我发现这个花絮在 Edge 和 FireFox 中有效——不是 Chrome 并且不了解 Apple 设备: Javascript - create desktop link programmatically
我假设您和我一样,正在努力让网站用户能够轻松地将快捷方式下载到他们的桌面。到目前为止,这就是我在台式机上找到的全部内容 - PWA 允许我的 Android 自动添加一个快捷方式到主屏幕 - 但不是 iPhone。
【讨论】: