2

我正在尝试从 ac# Windows 窗体启动 Chrome 的外部实例。只要本地 html 文件的路径中没有空格,它就可以正常工作。如果 Chrome 在第一个空格处停止。例如:“file:///C:/Users/user/Documents/Visual” 我试图通过用“%20”替换字符串中的空格来解决这个问题,就像 Chrome 通常做的那样。现在我得到这个乱码地址:“file:///C:/Users/user/Documents/Visual%2520Studio%2520%2012/TEMP.html”

这是我的代码片段:

string chromeTempFilePath = tempFilePath.Replace(" ", "%20");

Process.Start(browserPaths[2], chromeTempFilePath);//launch Chrome  

Process.Start在路径中有空格的 Firefox 和 IE 9 上都可以正常工作。任何帮助将不胜感激,因为我或多或少被难住了!

4

1 回答 1

3

删除该string.Replace方法并将您的更改Process.Start为如下所示:

Process.Start(browserPaths[2], string.Format("\"{0}\"", chromeTempFilePath));

您只需将其全部用双引号括起来。这对我来说适用于 Chrome,但我没有检查其他浏览器。

于 2012-11-23T17:16:54.120 回答