zoukankan      html  css  js  c++  java
  • Web 网页直接打开 Windows 软件

    日常开发中,经常会遇到需要在浏览器就可以直接引导用户打开软件的功能,例如国内的迅雷、QQ

    一般桌面软件分不同的操作系统,如 Windows、Linux、MacOS

    效果如下:

    以 Windows 为例:

    其实原理就是通过到 Windows 注册表添加规则,然后使用协议打开本地电脑的可执行文件。

    注册表(Registry)是Microsoft Windows中的一个重要的数据库,用于存储系统和应用程序的设置信息。

    HKEY_CLASSES_ROOT:启动应用程序所需的全部信息,如扩展名,应用程序与文档之间的关系,驱动程序名,DDE和OLE信息,类ID编号和应用程序与文档的图标等。

    步骤如下:

    创建注册表文件 open_software.reg

    Windows Registry Editor Version 5.00
    [HKEY_CLASSES_ROOTmy_custom_postman]
    "URL Protocol"="C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe"
    @="Postman"
    [HKEY_CLASSES_ROOTdrivereasyDefaultIcon]
    @="C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe,1"
    [HKEY_CLASSES_ROOTdrivereasyshell]
    [HKEY_CLASSES_ROOTdrivereasyshellopen]
    [HKEY_CLASSES_ROOTdrivereasyshellopencommand]
    @=""C:\Users\Ryan.Zheng\AppData\Local\Postman\Postman.exe" "%1""

    然后直接双击打开这个文件就可以直接将信息写入注册表中

     ps:注意注册表里不懂的内容不要随意删除,不然可能会导致你的电脑无法正常使用。

    然后 HTML 使用 a 标签的 href 属性,格式为:应用名://参数

    <a href="my_custom_href://xxx"></a>
  • 相关阅读:
    vue自定义指令clickoutside使用以及扩展用法
    抓包工具Charles的使用教程
    vue之element-ui文件上传
    Vue省市区三级联选择器V-Distpicker的使用
    Vue如何封装多个全局过滤器到一个文件
    vue工程中使用iconfont在线CDN不生效的问题
    es6 Null 传导运算符
    js中布尔值为false的六种情况
    vue-vli3创建的项目配置热更新
    js思维导图
  • 原文地址:https://www.cnblogs.com/ryanzheng/p/12707182.html
Copyright © 2011-2022 走看看