C# copy file to remote shared folder
2015-04-01 15:10
218 查看
C# 中File.Copy()只支持本地文件操作,对于Shared Folder 是不支持的。
借鉴 http://growingtech.blogspot.jp/2012/06/copy-network-shared-folder-file-using-c.html 调通了Shared folder文件的拷贝.
对该类的调用测试:
借鉴 http://growingtech.blogspot.jp/2012/06/copy-network-shared-folder-file-using-c.html 调通了Shared folder文件的拷贝.
public class Utilities { System.Runtime.InteropServices.DllImport("advapi32.DLL", SetLastError = true)] public static extern int LogonUser(string lpszUsername, string lpszDomain, string lpszPassword, int dwLogonType, int dwLogonProvider, ref IntPtr phToken); public static void CopyFile2RemoteFolder(string from, string to, string username, string domain, string password) { IntPtr tokenHandle = new IntPtr(0); int returnValue = LogonUser(username, domain, password, 2, 0, ref tokenHandle); if (returnValue == -1)throw new Exception("Logon failed."); System.Security.Principal.WindowsImpersonationContext impersonatedUser = null; System.Security.Principal.WindowsIdentity wid = new System.Security.Principal.WindowsIdentity(tokenHandle); impersonatedUser = wid.Impersonate(); System.IO.File.Copy(from, to, true); impersonatedUser.Undo(); } }
对该类的调用测试:
class Program { static void Main(string[] args) { // test copy file from local to remote share folder string local = @"D:\folder\filename.log"; string to = @"\\sharedfolder\filename.log"; Utilities.CopyFile2RemoteFolder(local, to, "username", "domain", "password"); } }
相关文章推荐
- Copy File/Folder to Remote Folder
- 创建虚拟机错误解决:Unable to find a 'userdata.img' file for ABI x86 to copy into the AVD folder.
- Copy file or folder path to the clipboard in Mac OS X Lion
- Slow network performance when you open a file that is located in a shared folder on a remote network computer
- Unable to find a 'userdata.img' file for ABI armeabi to copy into the AVD folder
- unable to find a 'userdata.img' file for ABI armeabi to copy into the AVD folder
- 报错“Unable to find a 'userdata.img' file for ABIarmeabi to copy into the AVD folder.”
- Android问题集锦之九:Unable to find a 'userdata.img' file for ABI armeabi to copy into the AVD folder.
- Sharepoint Error : The URL "filename" is invalid. It may refer to a nonexistent file or folder, or refer to a valid file or folder that is not in the current Web
- RMAN-06024: no backup or copy of the control file found to restore
- XRDP:Unable to copy the users Xauthorization file.
- C# File.Copy 方法 (String, String, Boolean)
- You don’t have permission to save the file “project.xcworkspace” in the folder
- c# zip file and folder programmatically
- SIT to test the file and folder permission
- Remove special file to special folder
- Create, Read, Write, Copy, Move and Delete a Text File using C#
- linux下安装PHP的CI框架,出现Your view folder path does not appear to be set correctly. Please open the following file and correct this: i
- C#中ArrayList.CopyTo()运行错误的解决方法
- 解决编译报错:Unable to copy file, because it is being used by another process.