在我的 UWP 应用程序中打开来自 Windows 的所有 http 链接
Posted
技术标签:
【中文标题】在我的 UWP 应用程序中打开来自 Windows 的所有 http 链接【英文标题】:Open a all http links from Windows in my UWP App 【发布时间】:2021-10-14 19:20:39 【问题描述】:我正在制作一个 UWP 应用程序,它会打开在 Windows 中单击的所有 http/https 协议链接。简而言之,它的行为与默认浏览器相同。
我使用以下与 http/https 协议关联
<Extensions>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="http">
<uap:DisplayName>httpUWP</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
<uap:Extension Category="windows.protocol">
<uap:Protocol Name="https">
<uap:DisplayName>HttpUWP</uap:DisplayName>
</uap:Protocol>
</uap:Extension>
</Extensions>
以及处理启动的方法protected override void OnActivated(IActivatedEventArgs args)
应用程序编译良好。我将我的应用程序设置为http
的默认开启程序,当我尝试从Win + R
或系统某处打开链接时,该应用程序会发出File system error (-2147219196)
那么,我现在该怎么办?
【问题讨论】:
【参考方案1】:恐怕http
和https
属于reserved for the operating system 的URI 方案名称,因此您无法将它们与您的应用相关联。
您仍然可以在 Windows 中使用change the default browser。
【讨论】:
我已经将我的应用程序设置为默认值,当我打开链接时,应用程序启动,显示启动画面,系统给出该错误。 您仍然不应将您的应用与任何保留的 URI 方案相关联。 保留一些东西是有意义的。但是在保留文件类型中,甚至列出了.mp3
。那么,这是否意味着没有 UWP 应用可以成为默认音乐播放器?
这意味着它不应该与该协议相关联。特定类型文件的默认应用是操作系统设置,基本上不能被自定义应用“劫持”。以上是关于在我的 UWP 应用程序中打开来自 Windows 的所有 http 链接的主要内容,如果未能解决你的问题,请参考以下文章
UWP ComboBox 不再具有打开/关闭动画(内部版本 14393)