/// <summary> /// Returns an IShellFolder for the desktop /// </summary> public static Object initDesktopFolder() { ShellApi.IShellFolder rootShell = null; // get the root shell folder ShellApi.SHGetDesktopFolder(ref rootShell); return(rootShell); }
public static IShellFolder GetDesktopFolder() { IntPtr ptrRet; ShellApi.SHGetDesktopFolder(out ptrRet); System.Type shellFolderType = System.Type.GetType("ShellLib.IShellFolder"); Object obj = Marshal.GetTypedObjectForIUnknown(ptrRet, shellFolderType); IShellFolder ishellFolder = (IShellFolder)obj; return(ishellFolder); }