private static string GetNormalizedFullPath(string path)
{
path = Path.GetFullPath(path);
if (path.Length >= 2 && path[1] == ':')
{
var driveLetter = path[0];
if ((driveLetter >= 'a') && (driveLetter <= 'z'))
{
path = driveLetter.ToString().ToUpperInvariant() + path.Substring(1);
}
var r = path.TrimEnd('\\');
if (r.Length > 3)
{
return r;
}
return path.Substring(0, 3);
}
else if (path.StartsWith(@"\\"))
{
var root = Path.GetPathRoot(path).ToLowerInvariant();
if (!path.StartsWith(root))
{
path = root + path.Substring(root.Length).TrimEnd('\\');
}
}
return path.TrimEnd('\\');
}