c# Process运行程序问题
用c#的Process类开启了一个程序,这个外部程序会把一个结果输出在一个文件里面,但是我用Process.Start方法开启了之后那个文件却不存在,这是什么原因?附源代...
用c# 的Process类开启了一个程序,这个外部程序会把一个结果输出在一个文件里面,但是我用Process.Start方法开启了之后那个文件却不存在,这是什么原因?
附源代码
Process p=new Process();
p.StartInfo.FileName="c:\documents and settings\a\local settings\temp\abcd.exe";
p.StartInfo.CreateNoWindow=true;
p.StartInfo.UseShellExecute=false;
p.Start();
p.Stop();
是不是要做什么修改?
p.WaitForExit(60000)
if(!p.HasExited) p.Kill()
还是不行 展开
附源代码
Process p=new Process();
p.StartInfo.FileName="c:\documents and settings\a\local settings\temp\abcd.exe";
p.StartInfo.CreateNoWindow=true;
p.StartInfo.UseShellExecute=false;
p.Start();
p.Stop();
是不是要做什么修改?
p.WaitForExit(60000)
if(!p.HasExited) p.Kill()
还是不行 展开
2个回答
展开全部
p.Start();就好了。干嘛还要去STOP。
一STOP还有东西么?
p.StartInfo.CreateNoWindow=true;
不建新窗口执行进程。所以你也看不到
一STOP还有东西么?
p.StartInfo.CreateNoWindow=true;
不建新窗口执行进程。所以你也看不到
追问
谢谢
就是能不能通过process调用cmd然后给它发送 cd %temp% 或者 cd %tmp% 命令,然后通过cmd来调用程序"%tmp%\0.exe"?
要不要用RedirectStandardInput?
追答
你说环境变量是吧?
C#是可以访问环境变量的。
另外,CONSOLE程序是可以重定向输入输出的。
那样你就可以通信了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询