Network file copy in .NET

10,098

First, try by giving IP address as below

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

if error exist try using impersonate, give user name and password

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();
Share:
10,098
Tsukasa
Author by

Tsukasa

Updated on June 04, 2022

Comments

  • Tsukasa
    Tsukasa almost 2 years

    I have an Ubuntu box running a Samba share open to everyone. I can access it via \ip address so I know I have full access to it.

    From within my application I am trying the following but it will not work via the ip address only the DNS name.

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

    I need to use the IP Address as people who are VPN'ing in won't be able to have the program access the dns name only the ip address.