From: Jeff Johnson on 22 Mar 2010 10:55 Given two file paths, I would like to determine with certainty whether those paths refer to the same physical file. Now, there is Path.GetFullPath(), and that's very helpful. But what if I refer to a file on my machine through a UNC path? Example: C:\Temp\123.txt \\MYCOMP\DRIVE_C\Temp\123.txt \\MYCOMP\DRIVE_C is a share mapped to C:\, so ultimately both these paths point to the same physical file. Does the .NET Framework provide any means of mapping this? Please note that I don't in any way expect to get local path translation for a REMOTE server, but I think it ought to be available when a UNC path points to the LOCAL machine. If .NET offers nothing built-in, does anyone know of a Windows API function that might do this? I realize that I could enumerate shares and do all the heavy lifting myself; I was just wondering if this sort of mapping is already written and available to me.
From: Jani J�rvinen [MVP] on 26 Mar 2010 11:21 Hello Jeff, > Given two file paths, I would like to determine with certainty whether > those paths refer to the same physical file. > I was just wondering if this sort of mapping is already written and > available to me. I don't think a ready-made function exists for this, either in .NET or Windows API. At least in .NET, you would need to enumerate the shares on the (local) computer, and then check to which paths they point to. Note that on NTFS, you can also mount disk partitions into directories, i.e. your regular "E:\" could be mounted to "C:\MoreStuff". So to make sure your code would work in all situations, your solution would become quite complex, I'm afraid. However, in case of UNC paths and share on the local computer, the solution ought to be quite straightforward. Hope this helps! -- Regards, Jani J�rvinen C# MVP Vantaa, Finland E-mail: janij(a)removethis.dystopia.fi Business: http://www.nimacon.net/ Personal: http://www.saunalahti.fi/janij/
|
Pages: 1 Prev: full redistributable version of Dotnet 3.5 SP1 Next: .NET 3.5 SP1 install failure |