5

我正在尝试使用 Process.Start 在默认浏览器中启动本地 html 文件。

一个示例网址如下:

"file:///C:/Documentation/HelpContent/default_CSH.htm#SectionA/Topic1.htm"

问题是,“#SectionA/Topic1.htm”位由于某种原因被剥离,因此该信息不会传递给浏览器。但是,它确实适用于非本地 url。

有谁知道我怎样才能让它工作,还是某种预防性安全问题?

谢谢

4

2 回答 2

4

使用Process.Starton iexplore.exe,以便您可以专门指定 URL 作为其参数:

System.Diagnostics.Process.Start("iexplore.exe", @"file:///c:/dir/file.html#anchor");
于 2010-03-09T23:45:44.310 回答
3

如果您让操作系统确定默认浏览器,则无法在浏览器中启动带有锚点的 URL。完成这项工作的唯一方法是将浏览器的可执行文件指定为 binarycoder 为 IE 编写的。它的工作方式与 Firefox 相同。

最好的解决方案显然是从注册表中确定默认浏览器的路径,然后专门调用该可执行文件。

于 2011-03-30T16:19:18.057 回答