打开在Windows 8.1中注册的自定义URI
本文关键字:注册 自定义 URI Windows | 更新日期: 2023-09-27 18:29:29
我想"打开"一个(本地)自定义的URI交换机,该交换机已在Windows 8.1中注册。如果链接嵌入在HTML邮件中,我可以打开它。
<a href="cobra://goto/addresses/ID=5545">
它在Windows资源管理器中工作:
cobra://goto/addresses/ID=5545
ID被发送到Cobra应用程序。
我试图通过WebRequest/FileWebRequest/HttpWebRequest将此URI发送到Cobra应用程序,但没有成功。
string uriToLaunch = @"cobra://goto/addresses/ID=" + ID;
Uri uri = new Uri(uriToLaunch);
FileWebRequest WebReq = (FileWebRequest)WebRequest.Create(uri);
WebReq.GetResponse();
错误:System.NotSupportedException:"无法识别URI前缀。"
第二次尝试,在我认识到URI可以与Windows资源管理器配合使用之后:
File.Open(uriToLaunch, FileMode.Open);
错误:System.NotSupportedException:"不支持给定路径的格式。"
有什么建议吗?我不想构建我自己的URI解析器,因为Windows知道如何处理它
您可以通过调用Process.Start()
从C#运行自定义URI
例如
System.Diagnostics.Process.Start("uri://here");
发生异常是因为uri字符串的格式不正确(有两个前缀-url:和cobra:)
尝试以下操作:
string uriToLaunch = @"cobra://goto/addresses/ID=" + ID;