【问题标题】:How to download .lnk file in html如何在 html 中下载 .lnk 文件
【发布时间】:2022-01-08 12:23:38
【问题描述】:

我有一个 html 页面可以通过这种方式访问​​的共享目录

<div onclick="windows.open('file://mypath/mysharefolder','_blank');">Shared folder</div>

这适用于 Internet Explorer,但不适用于 Chrome 浏览器(错误:不允许加载本地资源)。 所以我考虑用标签替换链接,以允许下载包含共享目录路径的 lnk 文件(手动创建),如下所示

<a href="mylinktofolder.lnk" download>Shared folder</a>

此标签可用于下载其他类型的文件(img、pdf、...),但不适用于 lnk 文件;在 Chrome 中下载失败,因为找不到文件 mylinktofolder.download

这样的文件可以下载吗?

提前致谢

【问题讨论】:

    标签: javascript html google-chrome


    【解决方案1】:

    这样的文件可以下载吗?

    是的,整理一下,这里我显示了两个选项卡,但第二个是您描述的作为第二个选项卡打开的共享文件夹,但是已被撕掉以显示第一个 index.html 中的两种类型的链接

    所以回答你的问题第二个链接测试了一系列 LNK 文件,最后到 cmd.exe.lnk 和 onclick 触发 lnk 下载,但对于 Windows 来说,.lnk 扩展名不是正常的显示为已执行,因此如果 lnk 是

    • 像 svg.lnk 这样的文件将在第二个选项卡中打开链接的 svg。
    • 链接到文件夹会打开该文件夹
    • 链接到命令,然后强制下载 cmd.exe 并显示警告

    您可以接受(保留)并运行该 cmd 副本!

    以上所有操作使用基于 Chrome 的浏览器(例如 Edge 或 SlimJet 或 Ungoogled Chrome)都是可能的。和 Chrome。

    <div onclick="window.open('file://c:/mysharedfolder','_blank');">Shared folder</div>
    <div onclick="window.open('file://C:/myshortcuts/downloads.lnk','_blank');">downloads.lnk</div>
    

    .

    作为非管理员用户,我可以在没有任何授权的情况下导航到本地共享或远程共享或远程映射驱动器,除非我对所有这些位置拥有用户读写权限。

    <div onclick="window.open('file://C:/TEMP/HTA/share(local).lnk','_blank');">Local Shared folder</div>
    

    【讨论】:

    • 感谢您的回答,但在共享目录上使用 windows.open 时,Chrome 总是返回“不允许加载本地资源”。
    【解决方案2】:

    Chrome 将 .lnk 文件标记为不安全下载,因此很遗憾您将无法使用 html/js 解决此问题

    来源:

    【讨论】:

    • 那么有没有办法让共享目录的链接与 chrome 一起工作?
    猜你喜欢
    • 1970-01-01
    • 2022-10-05
    • 2019-06-29
    • 1970-01-01
    • 2011-06-12
    • 2010-09-26
    • 1970-01-01
    • 1970-01-01
    • 2014-07-20
    相关资源
    最近更新 更多