Removed unnecessary handling of 'shell::' prefixed paths in GetShellItemForPath. Determined that `SHCreateItemFromParsingName` already does this.

pull/180/head
dahall 2020-11-02 07:39:46 -07:00
parent 44f0afe732
commit aa6cbf204f
1 changed files with 10 additions and 10 deletions

View File

@ -81,16 +81,16 @@ namespace Vanara.PInvoke
return null; return null;
// Handle case of a 'shell' URI and convert GUID to known folder // Handle case of a 'shell' URI and convert GUID to known folder
if (path.StartsWith("shell:::", StringComparison.InvariantCultureIgnoreCase)) //if (path.StartsWith("shell:::", StringComparison.InvariantCultureIgnoreCase))
{ //{
path = path.Substring(8); // path = path.Substring(8);
var separatorIndex = path.IndexOf('/'); // var separatorIndex = path.IndexOf('/');
var kf = new Guid(separatorIndex == -1 ? path : path.Substring(0, separatorIndex)); // var kf = new Guid(separatorIndex == -1 ? path : path.Substring(0, separatorIndex));
var fullPath = GetPathForKnownFolder(kf); // var fullPath = GetPathForKnownFolder(kf);
if (separatorIndex != -1) // if (separatorIndex != -1)
fullPath += path.Substring(separatorIndex).Replace('/', '\\'); // fullPath += path.Substring(separatorIndex).Replace('/', '\\');
path = fullPath; // path = fullPath;
} //}
var hr = SHCreateItemFromParsingName(path, null, typeof(IShellItem).GUID, out var unk); var hr = SHCreateItemFromParsingName(path, null, typeof(IShellItem).GUID, out var unk);
if (hr == (HRESULT)Win32Error.ERROR_FILE_NOT_FOUND) if (hr == (HRESULT)Win32Error.ERROR_FILE_NOT_FOUND)