使用Process.Start在PFE中打开文本文件

时间:2011-07-20 08:00:55

标签: c# visual-studio-express system.diagnostics notepad

我想知道你是否可以帮我解决这个问题。我看过谷歌但却一无所获。

我有一个程序,一旦完成将两个文件进行比较,就会将所有差异写入文本文件。我有2个单选按钮,一个用于在记事本中打开,另一个用于在PFE(程序员文件编辑器)中打开。

我的PFE.exe在“C:\ Program Files(x86)\ PFE \ PFE.exe”中,而记事本是默认情况下的常用位置。

我的代码是:

using System.Diagnostics;

...

if (radioButton1.Checked)
        {
            Process.Start("notepad.exe", File1.Text);
        }
        if (radioButton2.Checked)
        {
            Process.Start("PFE32.exe", File1.Text);
        }

现在,只需“Process.Start(”notepad.exe“,File1.Text);”工作正常,没有if语句。

因此,我的问题是 - 你能帮我弄清楚为什么PFE不会打开文本文件吗?

谢谢你们!

2 个答案:

答案 0 :(得分:2)

找不到PFE32.exe,因为它不在PATH环境变量中声明的任何目录中。
您需要将C:\Program Files (x86)\PFE添加到路径变量或使用完整路径调用PFE32.exe。

答案 1 :(得分:1)

第二个参数是命令的参数,记事本不需要参数名称,只需要工作的文件名。

也许PFE采用如下命名参数:pfe32.exe -path:C:\myfile.txt