今天需要解决个从远程服务器共享文件夹中下载文件到本地的小技术,在网上百度学习了下,因此下面的内容是在别人的基础上修改而来,同时还添加了从本地上传到服务器共享文件夹中的代码。我需要连接的服务器IP为:10.0.xx.xxx,共享文件夹名称为:ctec2,用户名:waveaccess, 密码:waveaccessxxx。
方法一:
建立一个控制台程序,下面直接上代码。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.IO;
using System.Diagnostics;
namespace test3
{
class Program
{
static void Main(string[] args)
{
bool status = false;
//连接
status = connectState(@"\\10.0.xx.xxx\ctec2", "waveaccess", "waveaccessxxx");
if (status)
{
//共享文件夹的目录
DirectoryInfo theFolder = new DirectoryInfo(@"\\10.0.xx.xxx\ctec2\");
string filename = theFolder.ToString();
//执行方法
TransportLocalToRemote(@"D:\readme1.txt", filename, "readme1.txt"); //实现将本地文件写入到远程服务器
TransportRemoteToLocal(@"D:\readme.txt", filename, "readme.txt"); //实现将远程服务器文件写入到本地
}
else
{
Console.WriteLine("未能连接!");
}
Console.WriteLine("成功");
Console.ReadKey();
}
public static bool connectState(string path)
{
return connectState(path, "", "");
}
/// <summary>
/// 连接远程共享文件夹
/// </summary>
/// <param name="path">远程共享文件夹的路径</param>
/// <param name="userName">用户名</param>
/// <param name="passWord">密码</param>
/// <returns></returns>
public static bool connectState(string path, string userName, string passWord)
{
bool Flag = false;
Process proc = new Process();
try
{
proc.StartInfo.FileName = "cmd.exe";
proc.StartInfo.UseShellExecute = false;
proc.StartInfo.RedirectStandardI