C# 调用Cmd命令的问题。
想用C# 调用cmd 黑屏,并在调出来的黑屏里,执行一串命令,并在黑屏里显示命令的运行结果? --------------------编程问答-------------------- Process proc = new Process();proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardInput = true;
proc.StartInfo.RedirectStandardOutput = true;
proc.StartInfo.RedirectStandardError = true;
try
{
proc.Start();
string command = @"Ipconfig" + Environment.NewLine()+"pause";
proc.StandardInput.WriteLine(command);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
proc.Close();
proc.Dispose();
GC.Collect();
} --------------------编程问答-------------------- 你可以生成一个临时的.bat --------------------编程问答-------------------- if (windowState == "定时关机")
{
timerTest.Enabled = false;
Process p = new Process();
p.StartInfo.FileName = "cmd.exe";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardInput = true;
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.CreateNoWindow = true;
p.Start();
p.StandardInput.WriteLine("shutdown -s -t 0");//关机
p.StandardInput.WriteLine("exit");
p.Close();
} --------------------编程问答-------------------- --------------------编程问答--------------------
LZ 这是我自己收藏的 分享给你、希望可以帮到你 有关 C# 代码调用 Cmd的:
private string RunCmd(string command)
{
//实例一个Process类,启动一个独立进程
Process p = new Process();
//Process类有一个StartInfo属性,这个是ProcessStartInfo类,包括了一些属性和方法,下面我们用到了他的几个属性:
p.StartInfo.FileName = "cmd.exe"; //设定程序名
p.StartInfo.Arguments = "/c " + command; //设定程式执行参数
p.StartInfo.UseShellExecute = false; //关闭Shell的使用
p.StartInfo.RedirectStandardInput = true; //重定向标准输入
p.StartInfo.RedirectStandardOutput = true; //重定向标准输出
p.StartInfo.RedirectStandardError = true; //重定向错误输出
p.StartInfo.CreateNoWindow = true; //设置不显示窗口
p.Start(); //启动
//p.StandardInput.WriteLine(command); //也可以用这种方式输入要执行的命令
//p.StandardInput.WriteLine("exit"); //不过要记得加上Exit要不然下一行程式执行的时候会当机
return p.StandardOutput.ReadToEnd(); //从输出流取得命令执行结果
}
private void CmdNetUse()
{
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;
p.Start();
p.StandardInput.WriteLine(@ "net use \\172.16.17.92 er:username password ");
p.StandardInput.WriteLine( "exit ");
string strRst = p.StandardOutput.ReadToEnd();
if(strRst.IndexOf( "命令成功完成 ") != -1 )
{
Response.Write( " <script language= 'javascript '> alert( '命令成功完成 '); </script> ");
}
}
以上两个都差不多、 LZ 你看一下、能否用得到、希望可以帮到你、 --------------------编程问答--------------------
using System;
using System.Text;
using System.Diagnostics;
class test
{
static void Main()
{
Process p = new Process();
p.StartInfo.FileName="cmd.exe";
//显示CMD窗口,如果设为false则不显示,适合后台作业
p.StartInfo.CreateNoWindow=true;
Console.WriteLine("请输入要执行的命令");
bool isinput=false;
if(isinput==false)
{
string s=Console.ReadLine();
Console.WriteLine("你输入的是"+s);
isinput=true;
}
}
}
基本原理代码就是如此~~~~~~~~~
关键要看你要操作什么,如果操作复杂,也不是一件容易的事 --------------------编程问答-------------------- --------------------编程问答-------------------- 只有学习的份,呵呵!谢谢楼上的各位大侠。。 --------------------编程问答-------------------- LS的各位大虾说的都很清楚了!! --------------------编程问答-------------------- 是的 你可以生成一个批处理w文件
--------------------编程问答-------------------- process.start("cmd /k " & 你的命令)
cmd
/k 保留执行命令
/c 执行命令后关闭窗口 --------------------编程问答-------------------- process.start("cmd /k " & 你的命令) --------------------编程问答-------------------- 我好失败啊!都看不懂。 --------------------编程问答-------------------- 这么多啊!学习了 !收藏@! --------------------编程问答--------------------
自己先敲10遍最基础的代码,然后调用winrar制作DOS版的压缩解压软件,你就精通这个命令了 --------------------编程问答-------------------- 我也好失败,继续加油
补充:.NET技术 , C#