private void Form1_Load(object sender, EventArgs e)
{
String cmd = Application.StartupPath + "\\adb\\adb.exe";
//ProcessStartInfo psi = null;
//psi = new ProcessStartInfo(cmd, "devices");
//Process p = Process.Start(psi);
Process p = new Process();
p.StartInfo.FileName = cmd; //设定程序名
p.StartInfo.Arguments = "devices"; //设定程式执行參數
p.StartInfo.UseShellExecute = false; //关闭Shell的使用
p.StartInfo.RedirectStandardInput = true; //重定向标准输入
p.StartInfo.RedirectStandardOutput = true; //重定向标准输出
p.StartInfo.RedirectStandardError = true; //重定向错误输出
p.StartInfo.CreateNoWindow = true; //设置不显示窗口
p.Start();
this.label1.Text = p.StandardOutput.ReadToEnd();
p.Close();
}
System.Diagnostics.Process p = new
System.Diagnostics.Process();
p.StartInfo =
new
System.Diagnostics.ProcessStartInfo();
p.StartInfo.FileName = strFile;
p.StartInfo.Arguments = args;
p.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
p.StartInfo.RedirectStandardOutput =
true
;
p.StartInfo.UseShellExecute =
false
;
p.StartInfo.CreateNoWindow =
true
;
p.Start();
System.IO.StreamReader reader = p.StandardOutput;
//截取输出流
string
line = reader.ReadLine();
//每次读取一行
while
(!reader.EndOfStream)
{
onReadLine(line);
line = reader.ReadLine();
}
p.WaitForExit();//等待程序执行完退出进程
p.Close();
//关闭进程
reader.Close();
//关闭流
private void ListFolderInfos(TreeListNode node,string folderpath)
{
Process p = new Process();
p.StartInfo.FileName = adb; //设定程序名
p.StartInfo.Arguments = "shell ls " + folderpath; //ls命令 foldername:"storage/sdcard0"
p.StartInfo.UseShellExecute = false; //关闭Shell的使用
p.StartInfo.RedirectStandardInput = true; //重定向标准输入
p.StartInfo.RedirectStandardOutput = true; //重定向标准输出
p.StartInfo.RedirectStandardError = true; //重定向错误输出
p.StartInfo.CreateNoWindow = true; //设置不显示窗口
p.Start();
StreamReader reader = p.StandardOutput;
string line = reader.ReadLine();
while (!reader.EndOfStream)
{
//if (line.Contains("storage/sdcard"))
//{
// return;
//}
if (line.Length > 0)
{
TreeListNode node1 = this.tlFolders.AppendNode(new object[] { line }, node);
//ListFolderInfos(node1, folderpath + "/" + node1.GetDisplayText(0));
}
line = reader.ReadLine();
}
p.WaitForExit();
reader.Close();
p.Close();
}