我有一个应用程序,用于查询数据库中用于任务的嵌套文件夹的位置,并打开此文件夹(使用ProcessStartInfo
类启动explorer.exe
并将文件夹名称作为参数传入)。如何在C#中使用ProcessStartInfo启动名称包含逗号的文件夹?
这工作得很好,除了一些包含逗号的文件夹(不幸的是有它们的负载!)
说,一个叫C:\this,folder\
文件夹,它试图启动“文件夹”。我怎样才能把它作为逐字处理?
示例代码:
public void LaunchExplorer() {
ProcessStartInfo explorer = new ProcessStartInfo();
string windir = Environment.GetEnvironmentVariable("WINDIR");
System.Diagnostics.Process prc = new System.Diagnostics.Process();
prc.StartInfo.FileName = windir + @"\explorer.exe ";
prc.StartInfo.Arguments = @"c:\this,folder";
prc.StartInfo.UseShellExecute = false;
try
{
prc.Start();
}
catch
{
MessageBox.Show("cannot open folder " + prc.StartInfo.Arguments);
}
}
用引号括起来也许(' “C:\本,文件夹”')? – 2011-03-08 08:47:52
什么是例外? – Jonathan 2011-03-08 08:49:21
资源管理器警告你文件夹“文件夹”不存在 - 它将逗号视为前导逗号,即试图打开“文件夹”而不是“c:\ this,folder” – 2011-03-09 09:52:20