我有一個應用程序,用於查詢數據庫中用於任務的嵌套文件夾的位置,並打開此文件夾(使用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