标题: [代码合集] DOS命令在C#中怎么调用 [打印本页]
作者: 【灵长类】 时间: 2011-6-22 16:13 标题: DOS命令在C#中怎么调用
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = false;
p.Start();
p.StandardInput.WriteLine("start explorer");//这个括号里该怎么写命令?我发现好多命令都执行不了啊
p.StandardInput.WriteLine("exit");
string s = p.StandardOutput.ReadToEnd();
p.Close();
作者: CrLf 时间: 2011-6-22 16:44
内部命令要用cmd解释执行。
加个cmd /c就行了,
- p.StandardInput.WriteLine("cmd /c start explorer");
复制代码
或者不要使用内部命令
- p.StandardInput.WriteLine("explorer");
复制代码
作者: 【灵长类】 时间: 2011-6-23 17:53
2# zm900612
是这样写吗?比如写一个dir e:\的命令,设为显示cmd窗体,我发现还是不显示任何内容啊
作者: CrLf 时间: 2011-6-23 18:19
pause也是内部命令啊...
而且把命令分开来写,他们已经不是作用于同一个cmd中了的吧,试试这样:- p.StandardInput.WriteLine("cmd /c start explorer&pause");
复制代码
作者: 【灵长类】 时间: 2011-6-24 23:30
4# zm900612
这样会弹出两个空窗口 = = 本想做一个打开软件和强制关软件的快捷方式的,就像桌面的图标一样,每点一个按钮就执行一句命令,但发现taskkill start+路径 等都会报错,至今没找到c#里dos命令怎么写。
不过也无所谓了,已经学会调用批处理文件了。但为每个按钮都写一个批处理太繁琐了= =
作者: CrLf 时间: 2011-6-25 12:09
不太清楚
不过写到一个批处理中可以用函数的形式呀:- ::在 C# 中使用“1.bat explorer”调用
- goto :%1
-
- :explorer
- start explorer
- pause
- exit
-
- :dir
- dir /b e:\
- pause
- exit
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |