1

我想知道你能不能帮我解决这个问题。我在谷歌上看过,但一无所获。

我有一个程序,一旦完成比较 2 个文件,它会将所有差异写入文本文件。我有 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 不能用文本文件打开吗?

谢谢你们!

4

2 回答 2

2

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

于 2011-07-20T08:04:14.663 回答
1

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

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

于 2011-07-20T08:03:52.920 回答