[这已经在4台计算机上按预期工作,但不是我自己的计算机(即使它可以与Edge 44.18362.449.0的稳定版一起使用)。
我从开发人员工具的网络选项卡中看到已发送请求,并且请求/响应标头看起来与稳定Edge中的相同(用户代理除外)。控制台给我以下警告消息,我怀疑这是其不起作用的部分原因:
资源被解释为文档,但以MIME类型传输application / x-ms-application:“ _ my_clickonce_url _”。
UPDATE:显然,这也适用于正在运行的计算机,我弄错了。
我在运行正常的其他计算机上未收到此消息。
例如,搜索此消息会给我带来很多点击(但对于其他mime类型):
他们提出了一些修复措施,例如向链接添加download
属性(在我的情况下不起作用),或更改返回的内容类型(在我的情况下应该是正确的)。似乎有一些与代码相关的更改,但是我怀疑我的问题是环境方面的,因为它仅在5台计算机中的一台失败。
[一个答案还建议检查摘要编辑器是否为Computer\HKEY_CLASSES_ROOT\
,但这与其他运行正常的计算机相同(.application
映射到内容类型application/x-ms-application
)。
我怀疑这可能是Microsoft支持票而不是堆栈溢出问题,但是我想这取决于问题所在。所以我想我将从这里开始。
在cmd中运行SystemInfo.exe
给出以下内容(已编辑的大块内容:]
OS Name: Microsoft Windows 10 Enterprise OS Version: 10.0.18362 N/A Build 18362 System Manufacturer: Hewlett-Packard System Model: HP Z230 Tower Workstation System Type: x64-based PC Hotfix(s): 6 Hotfix(s) Installed. [01]: KB4506991 [02]: KB4503308 [03]: KB4506472 [04]: KB4509096 [05]: KB4524569 [06]: KB4524570
比较工作版本的请求标头:
:authority: _redacted_host_ :method: GET :path: _path_/_AppName_.application?url=https://_redacted_host_:443/_redacted_endpoint_ :scheme: https accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 accept-encoding: gzip, deflate, br accept-language: en-US,en;q=0.9 referer: _redacted_url_ sec-fetch-mode: navigate sec-fetch-site: same-origin sec-fetch-user: ?1 upgrade-insecure-requests: 1 user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.36 Safari/537.36 Edg/79.0.309.25
和我的非工作版本:
:authority: _redacted_host_ :method: GET :path: _path_/_AppName_.application?url=https://_redacted_host_:443/_redacted_endpoint_ :scheme: https accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9 accept-encoding: gzip, deflate, br accept-language: sv,en;q=0.9,en-GB;q=0.8,en-US;q=0.7 referer: _redacted_url_ sec-fetch-mode: navigate sec-fetch-site: same-origin sec-fetch-user: ?1 upgrade-insecure-requests: 1 user-agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.36 Safari/537.36 Edg/79.0.309.25
正如您所看到的,除了接受语言,它们完全相同。
更新
:运行进程监视器(procmon.exe)并比较正常计算机和非正常计算机之间的结果,我发现ClickOnce Launcher进程(dfsvc.exe)从未在我的计算机上启动。msedge.exe会检查以下注册表项:HKCR\MIME\Database\Content Type\application/x-ms-application\Extension
=>“ .application”
然后继续查找似乎是文件扩展名处理程序的文件:HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.application
=>“ msedge.exe”
无法正常工作的浏览器永远无法到达第二步。
我下载了Microsoft Edge的内部版本(版本79.0.309.25)。启用ClickOnce:edge:// flags /#edge-click-once尝试从浏览器启动ClickOnce应用程序。这已经作为...
经过长期研究,我们发现此行为源自智能屏幕过滤器。