问题是这样的,想通过自己的程序编译一个.vbp文件。
已知在命令行模式下,先输入“cd C:\Program Files\Microsoft Visual Studio\VB98\”,再输入“vb6 /m a.vbp”就可以编译a.vbp文件。怎么通过程序来实现这一操作?我的代码是这样子写的,但根本没有结果:            Process p = new Process();
            p.StartInfo.CreateNoWindow = true;
            p.StartInfo.FileName = "cmd.exe";
            p.StartInfo.UseShellExecute = false;
            p.StartInfo.RedirectStandardInput = true;
            p.StartInfo.RedirectStandardOutput = true;
            p.Start();
            p.StandardInput.WriteLine("cd " + @"C:\Program Files\Microsoft Visual Studio\VB98\");
            p.StandardInput.WriteLine("vb6 /m a.vbp");
            p.Close();
请问应该如何修改?

解决方案 »

  1.   

    调试下看看你的
    p.StandardOutput.ReadToEnd();是什么
      

  2.   


    public static string ExeCommand(string [] commandTexts)
       {
        Process p = new Process();
        p.StartInfo.FileName = "cmd.exe";
        p.StartInfo.UseShellExecute = false;
        p.StartInfo.RedirectStandardInput = true;
        p.StartInfo.RedirectStandardOutput = true;
        p.StartInfo.RedirectStandardError = true;
        p.StartInfo.CreateNoWindow = true;
       string strOutput = null;
       try
        {
         p.Start();
         p.StandardInput.WriteLine("cd " + @"C:\Program Files\Microsoft Visual Studio\VB98\");
         p.StandardInput.WriteLine("vb6 /m a.vbp");     p.StandardInput.WriteLine("exit");
         strOutput = p.StandardOutput.ReadToEnd();
         p.WaitForExit();
         p.Close();
        }
       catch(Exception e)
        {
         strOutput = e.Message;
        }
       return strOutput;
       }
      

  3.   

    Process.Start(@"C:\Program Files\Microsoft Visual Studio\VB98\vb6.exe", "/m a.vbp");
      

  4.   

    命令应该作为cmd.exe的参数吧?            p.Start("cmd.exe","cd " + @"C:\Program Files\Microsoft Visual Studio\VB98\;vb6 /m a.vbp;");
               不知道行不
      

  5.   

    psi.Arguments += @" put arguments here";
      

  6.   

    你最后的p.StandardInput.WriteLine("vb6 /m a.vbp");
    要指定一下vb6的全路径。
      

  7.   

    因为当前你已经cd 到C:\Program Files\Microsoft Visual Studio\VB98\这个目录下去了。
    你的vb6要写全路径。