private NativeMethods.IShellItem CreateItemFromParsingName(string path)
{
object item;
var guid = new Guid("43826d1e-e718-42ee-bc55-a1e261c37bfe"); // IID_IShellItem
Marshal.ThrowExceptionForHR(NativeMethods.SHCreateItemFromParsingName(
path, IntPtr.Zero, ref guid, out item
));
return (NativeMethods.IShellItem)item;
}