0
private void button1_Click(object sender, EventArgs e)
        {
            if (openFileDialog1.ShowDialog() == System.Windows.Forms.DialogResult.OK)
            {
                string fileName = openFileDialog1.FileName;

                ProcessStartInfo info = new ProcessStartInfo();
                info.WindowStyle = ProcessWindowStyle.Hidden;
                info.FileName = "WK01.exe";
                info.Arguments = "WK01.exe";
                info.Arguments = fileName;
                Process p = new Process();

                p.StartInfo = info;
                p.Start();
                p.WaitForExit();


            }
        }

当我运行这段代码时,这段代码会中断p.Start();,因为我的 WK01.exe 项目包含 2 个参数,一个是它的路径,第二个是我给它的图片或任何东西,当我运行它并按下它要求我的按钮时当我选择它破坏程序的文件时选择文件p.Start();

4

2 回答 2

1

info.Arguments你已经更新了两次。所以它只取最后一次更新的值。如果你想传递 2 个参数,你可以按如下方式进行。

info.Arguments = "WK01.exe "+fileName;

示例在这里

于 2013-11-09T19:09:19.447 回答
1

这是因为您的bin/debug(或 bin/release)文件夹中没有 wk01.exe 可执行文件。

如果需要,您可以将其添加到您的项目文件(甚至作为参考)并标记为“复制到输出目录 = 始终复制”以自动执行此操作。

于 2013-11-09T19:27:26.347 回答