回 帖 发 新 帖 刷新版面

主题:输出重定向问题?请教了

我编写了一个C语言程序如下:
#include <stdio.h>

main()
{
printf("Hello World");
}

保存文件为:a.c
编译生成了a.exe程序
在cmd里面输入a.exe就能输出hello world,然后截获,但是有的时候有不能在cmd上面显示hello world字符串,我想用进程来启动a.exe然后直接接火这个字符串,不知道如何做是好,还望各位能给点意见

下面是我的代码:
Process proc = new Process(); 
proc.StartInfo.FileName = "cmd.exe"; 
proc.StartInfo.WorkingDirectory = "d:\\c\\c_exe\\"; 
proc.StartInfo.CreateNoWindow = true; 
proc.StartInfo.UseShellExecute = false; 
proc.StartInfo.RedirectStandardInput = true;//标准输入重定向 
proc.StartInfo.RedirectStandardOutput = true;//标准输出重定向 

proc.Start(); 
proc.StandardInput.WriteLine("a.exe");
proc.StandardInput.WriteLine("exit"); 
sExecResult = proc.StandardOutput.ReadToEnd();//返回脚本执行的结果 
proc.WaitForExit(); 
proc.Close();

我想通过运行cmd来运行a.exe得到输出结果,可是我失败了,谁有什么解决方法呢!!

回复列表 (共1个回复)

沙发

各位,请帮忙啊!!!!!

我来回复

您尚未登录,请登录后再回复。点此登录或注册