在.net中复制网络文件

本文关键字:网络 文件 复制 net | 更新日期: 2023-09-27 18:11:31

我有一个运行Samba共享的Ubuntu盒子,向所有人开放。我可以通过'ip address访问它,所以我知道我有完全的访问权限。

从我的应用程序内,我正在尝试以下,但它不会通过ip地址只有DNS名称工作。

// val = ip address
File.Copy("''''" + val + "''share''vSphere''vSphere.exe", Temp + "vSphere.exe", true);

我需要使用IP地址,因为VPN的人将无法让程序访问dns名称,只有IP地址。

在.net中复制网络文件

首先,尝试提供如下IP地址

File.Copy(@"''192.100.1.23'share'vSphere'vSphere.exe", Path.combine(Temp ,"vSphere.exe"), true);

如果存在错误,请尝试使用impersonate,给出用户名和密码

AppDomain.CurrentDomain.SetPrincipalPolicy(PrincipalPolicy.WindowsPrincipal);
WindowsIdentity idnt = new WindowsIdentity(username, password);
WindowsImpersonationContext context = idnt.Impersonate();
File.Copy(@"''192.100.1.23'share'vSphere'vSphere.exe", Path.combine(Temp ,"vSphere.exe"), true);
context.Undo();