vshed.IO.UncShare

View project on GitHub

Overview

.Net library for accessing UNC Shares with an alternative identity without the need to manage mapping and unmapping. This was created to simplify picking up output files from legacy industrial equipment for data analytics.

NuGet GitHub release

Example Usage

using vshed.IO.UncShare;

...

try
{
    using (var share = new UncShare(@"\\hostName\networkShareName"
                                    , "userAccount"
                                    , "password"))
    {
        if (share.GetFiles().Length >= 1)
            Console.WriteLine("Files found");
        else
            Console.WriteLine("No files found");
    }
}
catch (System.ComponentModel.Win32Exception ex)
{
    if (ex.NativeErrorCode == 53)
        Console.WriteLine("The specified UNC Path could not be found");
    else if ((ex.NativeErrorCode == 86 | ex.NativeErrorCode == 1326)
        Console.WriteLine("The specified Username or Password is invalid");
    else
        Console.WriteLine(ex.Message);
}

Win32Exception

For a complete list of possible exceptions please reference Microsoft documentation.