c#中执行adb命令

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();
          
        }

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值