关闭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

相关推荐
用户35212019560几秒前
React-router v7(下)
前端
枫,为落叶1 分钟前
【vue】设置时间格式
前端·javascript·vue.js
郝学胜-神的一滴23 分钟前
Linux系统函数link、unlink与dentry的关系及使用注意事项
linux·运维·服务器·开发语言·前端·c++
.小墨迹37 分钟前
linux删除通过源码安装的库
linux·运维·chrome
昔人'1 小时前
css`text-wrap:pretty`
前端·css
勇敢di牛牛1 小时前
Vue+mockjs+Axios 案例实践
前端·javascript·vue.js
詩句☾⋆᭄南笙1 小时前
HTML列表、表格和表单
服务器·前端·html·表格·列表·表单
IT_陈寒1 小时前
Python性能翻倍的5个冷门技巧:从GIL逃逸到内存视图的实战优化指南
前端·人工智能·后端
南城巷陌1 小时前
错误边界:用componentDidCatch筑起React崩溃防火墙
前端·react.js·前端框架
FinClip2 小时前
OpenAI推出Apps SDK,你的企业App跟上了吗?
前端·app·openai