如何从控制台应用程序运行程序?

时间:2011-02-09 20:15:44

标签: c# console dos batch-processing

我正在寻找具有创建控制台应用程序示例的资源。我已经过了“Hello World”阶段,但是我需要运行一个应用程序。我有一个我需要运行的字符串,我从批处理文件中提取,我试图在C#应用程序中自动执行。我需要帮助知道哪些类和命名空间具有运行它所需的功能。

编辑:对不起问的问题很抱歉。我会改写它。

我正在尝试创建一个控制台应用程序,它将替换我已部分编写的批处理文件。我需要做的一些数据和文件操作比在批处理文件中轻松完成要复杂得多。到目前为止,我正在阅读,编写和操作文件。我在尝试弄清楚如何运行命令以在服务器上执行应用程序并传入正确的参数时遇到困难。

更新:一位同事给了我以下代码snippit,这正是我需要继续前进的。对不起,这个问题措辞得太厉害了。

    public static string MyDOSMethod()
    {
        ProcessStartInfo si = new ProcessStartInfo("cmd.exe");
        si.RedirectStandardInput = true;
        si.RedirectStandardOutput = true;
        si.UseShellExecute = false;

        Process p = Process.Start(si);

       p.StandardInput.WriteLine(@"cd \windows\system32");

        p.StandardInput.WriteLine("exit");

        try
        {
            return p.StandardOutput.ReadToEnd();
        }
        catch (Exception e)
        {
            return e.Message;
        }
    }

3 个答案:

答案 0 :(得分:3)

问题不是很清楚,我理解的是“我需要从我的控制台应用程序启动一个应用程序;我可以使用哪个类?”

我的回答是:您应该查看静态方法Process.Start(通常在命名空间System.Diagnostics的类Process处)。

答案 1 :(得分:1)

查看this tutorial,它会引导您完成Process.StartProcessStartInfo的使用(运行流程并向您提供反馈)

答案 2 :(得分:-1)

如果您不熟悉编程,我建议您介绍C#。

http://www.csharp-station.com/Tutorial.aspx

为了编译你需要一个编译器和一个GUI来编辑代码也很好:o)在这里你可以使用免费版的Visual Studio:

http://www.microsoft.com/express/

在Visual Studio中,只需单击新的选择控制台应用程序,我认为您将获得一个可以运行和构建的Hello World“默认应用程序”。