c# FTP文件上传

//直接看代码,测试通过

if  (Ping( "192.168.0.144" ))  //Ping 看通不通
{
    if  (Connect( "192.168.0.144" "administrator" "1qaz2wsx???" ))  //建立连接
   {
     _fileStream =  new  FileStream( @"\\192.168.0.144\hh\"  + _currentFileName, FileMode.OpenOrCreate);
   }
}
 
#region 连接远程机器
         public  static  bool  Ping( string  remoteHost)
         {
             bool  Flag =  false ;
             Process proc =  new  Process();
             try
             {
                 proc.StartInfo.FileName =  "cmd.exe" ;
                 proc.StartInfo.UseShellExecute =  false ;
                 proc.StartInfo.RedirectStandardInput =  true ;
                 proc.StartInfo.RedirectStandardOutput =  true ;
                 proc.StartInfo.RedirectStandardError =  true ;
                 proc.StartInfo.CreateNoWindow =  true ;
                 proc.Start();
                 string  dosLine =  @"ping -n 1 "  + remoteHost;
                 proc.StandardInput.WriteLine(dosLine);
                 proc.StandardInput.WriteLine( "exit" );
                 while  (proc.HasExited ==  false )
                 {
                     proc.WaitForExit(500);
                 }
                 string  pingResult = proc.StandardOutput.ReadToEnd();
                 if  (pingResult.IndexOf( "(0% loss)" ) != -1)
                 {
                     Flag =  true ;
                 }
                 proc.StandardOutput.Close();
             }
             catch  (Exception ex)
             {
             }
             finally
             {
                 try
                 {
                     proc.Close();
                     proc.Dispose();
                 }
                 catch
                 {
                 }
             }
             return  Flag;
         }
 
         public  static  bool  Connect( string  remoteHost,  string  userName,  string  passWord)
         {
             if  (!Ping(remoteHost))
             {
                 return  false ;
             }
             bool  Flag =  true ;
             Process proc =  new  Process();
             try
             {
                 proc.StartInfo.FileName =  "cmd.exe" ;
                 proc.StartInfo.UseShellExecute =  false ;
                 proc.StartInfo.RedirectStandardInput =  true ;
                 proc.StartInfo.RedirectStandardOutput =  true ;
                 proc.StartInfo.RedirectStandardError =  true ;
                 proc.StartInfo.CreateNoWindow =  true ;
                 proc.Start();
                 string  dosLine =  @"net use \\"  + remoteHost +  " "  + passWord +  " "  " /user:"  + userName +  ">NUL" ;
                 proc.StandardInput.WriteLine(dosLine);
                 proc.StandardInput.WriteLine( "exit" );
                 while  (proc.HasExited ==  false )
                 {
                     proc.WaitForExit(1000);
                 }
                 string  errormsg = proc.StandardError.ReadToEnd();
                 if  (errormsg !=  "" )
                 {
                     Flag =  false ;
                 }
                 proc.StandardError.Close();
             }
             catch  (Exception ex)
             {
                 Flag =  false ;
             }
             finally
             {
                 try
                 {
                     proc.Close();
                     proc.Dispose();
                 }
                 catch
                 {
                 }
             }
             return  Flag;
         }
         #endregion
 
排版差了点 请谅解。 测试通过
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值