使用net use 命令實現(xiàn)遠程機器的文件復制。
          比如,從機器A操作實現(xiàn)把機器B的文件拷貝到機器A上,需要把機器B文件夾加上機器A的用戶權限。

          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;
            }
          這兩個方法是對機器B建立連接,連接成功后,用File.Copy就可以了
          if (Ping("機器B"))
             {
              if (Connect("機器B","機器A用戶","機器A用戶訪問密碼"))
              {
               File.Copy("\\機器B\文件路徑\文件名稱","機器A存放文件完整路徑",true);
              }
             }

          posted on 2010-07-27 22:29 sanmao 閱讀(865) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發(fā)表評論。


          網(wǎng)站導航:
           

          常用鏈接

          留言簿(5)

          隨筆分類

          隨筆檔案

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 保亭| 平山县| 金沙县| 凤冈县| 饶阳县| 台江县| 攀枝花市| 康乐县| 顺昌县| 彩票| 凌云县| 延边| 宁陵县| 徐闻县| 瓦房店市| 巴青县| 庆阳市| 柯坪县| 中阳县| 蛟河市| 平阴县| 凤台县| 株洲县| 那曲县| 甘孜县| 开封市| 漳浦县| 滨海县| 定襄县| 和顺县| 板桥市| 阳春市| 永嘉县| 呼伦贝尔市| 蒲城县| 周宁县| 仁怀市| 东阳市| 石景山区| 西华县| 昆明市|