升级Win11后Excel VBA调用IE启动应用跳转Edge需确认,如何跳过弹窗?
解决方案
方案1:直接跳过浏览器调用(最优,无弹窗)
你本质是要启动指定的ClickOnce应用,完全不需要依赖IE/Edge浏览器,直接用VBA的Shell函数调用系统自带的ClickOnce运行时启动即可,替换原有所有IE相关代码即可:
' 替换原有IE对象创建及导航代码 Shell "rundll32.exe dfshim.dll,ShOpenVerbApplication " & "https://robostorage.blob.core.windows.net/clickonce/PbnPlayer/RoboBridge.PbnPlayer.application?pbnFileName=" & oefRobInp, vbHide
该方案完全绕过浏览器,不会触发任何启动确认弹窗,也不受Win11 IE停用、Edge策略调整影响。
方案2:调整Edge配置兼容原有代码
如果要保留原有IE调用逻辑,可通过修改Edge的配置跳过弹窗:
- 打开Edge浏览器,进入
edge://settings/defaultBrowser页面 - 将你要访问的站点
robostorage.blob.core.windows.net添加到「Internet Explorer 模式页面」列表 - 进入
edge://settings/content/all,搜索上述站点,将「可以打开您设备上的应用」权限设置为允许 - 若要批量部署可修改本地组策略:启用「Microsoft Edge > 内容设置 > 定义允许自动打开外部协议的站点列表」,将上述站点加入列表,同时启用「Microsoft Edge > ClickOnce 支持」策略
注意事项
- 方案1需要目标设备正常安装.NET Framework(Win11默认已预装),无需额外配置
- 若使用家庭版Win11无本地组策略编辑器,可直接修改注册表对应项实现相同配置效果
内容的提问来源于stack exchange,提问作者Saskia Hermans
相关产品推荐
相关产品推荐

