日期:2014-05-17  浏览次数:21204 次

C# 远程拷贝文件
程序如下:
File.Copy(@"//192.168.0.100/aa/1.txt", @"E:\1.txt", true);
File.Copy(@"C:/1.txt", @"D:\1.txt", true);

拷远程的不成功,拷本地的可以
192.168.0.100/aa 可以访问,而且1.txt我也设置成了everyone

是不是还写少了什么?登陆的账号密码验证要写在程序里?

------解决方案--------------------
先netuse建立ipc连接,然后才能拷贝文件。
api WNetAddConnection2A
参考
http://www.rhyous.com/2011/08/07/how-to-authenticate-and-access-the-registry-remotely-using-c/
------解决方案--------------------
Copy前先使用net use登录


------解决方案--------------------
远程COPY,是否可以直接在运行里面\\192.168.0.100\可以访问?
------解决方案--------------------
确保权限。 你用代码远程可以打开文件么?
------解决方案--------------------
net use z: \\远程主机名\共享目录 用户名密码 /user:管理员权限的用户名(可以为域用户) 映射远程的共享目录为Z
------解决方案--------------------
拷貝文件
要注意源文件共享,并且everyone都有read的权限
用uploadFile.SaveAs(filePath)可以繞過這些