关闭chrome/edge 浏览器打开外部应用程序的弹窗

chrome版本112.0.6167.140

一、本地应用程序用注册表注册一下,浏览器可以调用

javascript 复制代码
Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\signal]
@="signalProtocol"
"URL Protocol"="signalProtocol"

[HKEY_CLASSES_ROOT\signal\DefaultIcon]
@="E:\\test\\test.exe,1"

[HKEY_CLASSES_ROOT\signal\shell]

[HKEY_CLASSES_ROOT\signal\shell\open]

[HKEY_CLASSES_ROOT\signal\shell\open\command]
@="\"E:\\test\\test.exe\" \"%1\""

二、直接用浏览器调用的话会弹确认窗口,需求不要弹出确认窗口

  • 用注册表的方式关闭chrome/edge 浏览器打开外部应用程序的弹窗
  1. 先关闭chrome/edge 浏览器
  2. 新建一个文本文件,粘贴下面内容,把[{\"allowed_origins\": [\"*\"], \"protocol\": \"signal\"}]里面的signal换成应用程序的注册表名称,完成后另存为.reg文件 (注释:若想要只在某网站下去除提醒,将 * 替换为网站链接。)
  3. 双击执行注册表
  4. 打开浏览器清除缓存,就可以了
javascript 复制代码
Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome]
"ExternalProtocolDialogShowAlwaysOpenCheckbox"=dword:00000001
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"ExternalProtocolDialogShowAlwaysOpenCheckbox"=dword:00000001
 
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome]
"AutoLaunchProtocolsFromOrigins"="[{\"allowed_origins\": [\"*\"], \"protocol\": \"signal\"}]"
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"AutoLaunchProtocolsFromOrigins"="[{\"allowed_origins\": [\"*\"], \"protocol\": \"signal\"}]"

说明

  1. Chromium 79 ~ Chromium 84版本可以通过复选框(ExternalProtocolDialogShowAlwaysOpenCheckbox)控制是否显示提示的弹窗。

    javascript 复制代码
    Windows Registry Editor Version 5.00
     
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome]
    "ExternalProtocolDialogShowAlwaysOpenCheckbox"=dword:00000001
     
    [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
    "ExternalProtocolDialogShowAlwaysOpenCheckbox"=dword:00000001
  2. Chromium 85版及以后可以通过AutoLaunchProtocolsFromOrigins以json的方式更细粒度地控制协议(protocol)及该协议允许自启动的源[IP:port、域名](allowed_origins)

javascript 复制代码
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Google\Chrome]
"AutoLaunchProtocolsFromOrigins"="[{\"allowed_origins\": [\"*\"], \"protocol\": \"signal\"}]"
 
[HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Edge]
"AutoLaunchProtocolsFromOrigins"="[{\"allowed_origins\": [\"*\"], \"protocol\": \"signal\"}]"

参考

Microsoft Edge 浏览器策略文档 | Microsoft Learn

Microsoft Edge 浏览器支持的所有策略的 Windows 和 Mac 文档
https://learn.microsoft.com/zh-cn/deployedge/microsoft-edge-policies#autolaunchprotocolsfromorigins

相关推荐
浪浪山小白兔7 分钟前
HTML5 常用事件详解
前端·html·html5
Python大数据分析@24 分钟前
通俗的讲,网络爬虫到底是什么?
前端·爬虫·网络爬虫
Lysun0011 小时前
vue2的$el.querySelector在vue3中怎么写
前端·javascript·vue.js
jerry-891 小时前
Centos类型服务器等保测评整/etc/pam.d/system-auth
java·前端·github
小爬菜1 小时前
Django学习笔记(启动项目)-03
前端·笔记·python·学习·django
想要打 Acm 的小周同学呀1 小时前
前端Vue2项目使用md编辑器
前端·编辑器·vue2·markdown 语法
计算机-秋大田2 小时前
基于SSM的家庭记账本小程序设计与实现(LW+源码+讲解)
java·前端·后端·微信小程序·小程序·课程设计
海的预约2 小时前
VUE之路由Props、replace、编程式路由导航、重定向
前端·vue.js·智能路由器
西柚与蓝莓3 小时前
报错:{‘csrf_token‘: [‘The CSRF token is missing.‘]}
前端·flask
德迅云安全-小钱4 小时前
跨站脚本攻击(XSS)原理及防护方案
前端·网络·xss