The answer to this question显示了如何使用来自C#的Web URL启动Edge:
System.Diagnostics.Process.Start("microsoft-edge:http://www.google.com");
但是,这似乎不适用于文件URL。
System.Diagnostics.Process.Start("microsoft-edge:file:///C:/foo/bar.html");
启动Edge,但不显示文件。而是,Edge打开到其默认页面。将相同的URL(“ file:/// C:/foo/bar.html”)粘贴到Edge地址栏中可以正常工作,如果我在资源管理器中右键单击该文件并选择Open With-> Edge,则可以使用相同的URL出现在地址栏中。
有人知道如何使用文件URL启动Edge吗?
TIA
答案 0 :(得分:1)
如注释中所述,Edge目前不支持通过命令行使用file:协议。
但是,目前可以使用IApplicationActivationManager
用本地文件启动Edge。可以从MicrosoftEdgeLauncher的C#版本中提取必要的代码,并将其集成到C#应用程序中。
请参见https://github.com/MicrosoftEdge/edge-launcher上的“ MicrosoftEdgeLauncherCsharp”。要使用本地文件启动,请使用'file:/// d:/path/filename.ext '作为arguments
的{{1}}参数。
答案 1 :(得分:0)
一个肮脏的解决方案:首先将默认启动器设置为Edge。
假设您要打开的文件为file:///C:/foo/bar.html
,则可以使用explorer
启动它:
explorer file:///C:/foo/bar.html
这将为您打开带有HTML的Edge。
这似乎是start microsoft-edge:file:///C:/foo/bar.html
不再有效之后的唯一解决方案。