Process.Start for ftp://提示应用程序

时间:2016-08-08 16:50:59

标签: c# ftp process.start

我正在编写将从我们公司的ftp(ftp://...)开始下载的代码,但是当使用Process.Start("ftp://...");时,Windows将提示我打开一个应用程序(我正在使用Windows 10) )。如果我使用Process.Start("http://www.google.com");则不会提示。如何避免此提示并将用户导航到ftp URL?

1 个答案:

答案 0 :(得分:2)

Windows知道如何处理以http开头的网址:打开默认网络浏览器并浏览到该网址。但是,它本身并不知道如何处理以ftp开头的网址。

当您使用Process.Start时,请将其视为运行"运行" Windows中的行。您通常需要指定要运行的可执行文件,并且在路径或可执行文件名后发生任何其他信息(即可执行文件的参数)。

在这种情况下,我说你只是想启动Internet Explorer并提供你的URL作为参数:

var psi = new ProcessStartInfo(Environment.ExpandEnvironmentVariables(@"%ProgramFiles%\Internet Explorer\iexplore.exe"), url);
var proc = Process.Start(psi);

编辑:回答有关使用默认浏览器的问题,请参阅this SO answer,了解如何获取默认浏览器的路径: