C# 4.0 .invalidoOperationException在进程中。启动

C# 4.0 .invalidoOperationException在进程中。启动,c#-4.0,system.diagnostics,C# 4.0,System.diagnostics,我有以下代码 foreach (Items it in sortedList) { ProcessStartInfo startInfo = new ProcessStartInfo(); startInfo.CreateNoWindow = false; startInfo.UseShellExecute = true; startInfo.FileName = it.filePath; startInfo.WindowStyle = ProcessWi

我有以下代码

foreach (Items it in sortedList)
{
    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.CreateNoWindow = false;
    startInfo.UseShellExecute = true;
    startInfo.FileName = it.filePath;
    startInfo.WindowStyle = ProcessWindowStyle.Hidden;

    try
    {
        Process p = new Process();
        p.StartInfo = startInfo;
        p.Start();
        p.WaitForExit();
    }
    catch(Exception ew)
    {
        // Log error.
    }             
}
每次打开mp4文件,我都会得到一个

无效操作例外

它说没有任何程序链接到这种格式,但同时windows media player启动并显示文件

有人能给我解释一下为什么这段代码抛出了
invalidoOperationException
,以及我如何解决这个问题吗


谢谢。

您正在为列表中的每个项目运行一个流程。您确定所有项目都具有良好的格式,并且可以在media player中播放吗。还要检查文件路径-如果路径中有空格,它应该包含双引号。问题是可执行文件的路径,当我给它一个完整的可执行文件路径时,进程被正确创建,一切正常。