IShellFolder.cs 1.6 KB

123456789101112131415161718192021222324252627282930313233343536
  1. using System;
  2. using System.Runtime.InteropServices;
  3. using System.Runtime.InteropServices.ComTypes;
  4. namespace Standard;
  5. [InterfaceType(ComInterfaceType.InterfaceIsIUnknown)]
  6. [Guid("000214E6-0000-0000-C000-000000000046")]
  7. [ComImport]
  8. internal interface IShellFolder
  9. {
  10. void ParseDisplayName([In] IntPtr hwnd, [In] IBindCtx pbc, [MarshalAs(UnmanagedType.LPWStr)][In] string pszDisplayName, [In][Out] ref int pchEaten, out IntPtr ppidl, [In][Out] ref uint pdwAttributes);
  11. IEnumIDList EnumObjects([In] IntPtr hwnd, [In] SHCONTF grfFlags);
  12. [return: MarshalAs(UnmanagedType.Interface)]
  13. object BindToObject([In] IntPtr pidl, [In] IBindCtx pbc, [In] ref Guid riid);
  14. [return: MarshalAs(UnmanagedType.Interface)]
  15. object BindToStorage([In] IntPtr pidl, [In] IBindCtx pbc, [In] ref Guid riid);
  16. [PreserveSig]
  17. HRESULT CompareIDs([In] IntPtr lParam, [In] IntPtr pidl1, [In] IntPtr pidl2);
  18. [return: MarshalAs(UnmanagedType.Interface)]
  19. object CreateViewObject([In] IntPtr hwndOwner, [In] ref Guid riid);
  20. void GetAttributesOf([In] uint cidl, [In] IntPtr apidl, [In][Out] ref SFGAO rgfInOut);
  21. [return: MarshalAs(UnmanagedType.Interface)]
  22. object GetUIObjectOf([In] IntPtr hwndOwner, [In] uint cidl, [MarshalAs(UnmanagedType.LPArray, ArraySubType = UnmanagedType.SysInt, SizeParamIndex = 2)][In] IntPtr apidl, [In] ref Guid riid, [In][Out] ref uint rgfReserved);
  23. void GetDisplayNameOf([In] IntPtr pidl, [In] SHGDN uFlags, out IntPtr pName);
  24. void SetNameOf([In] IntPtr hwnd, [In] IntPtr pidl, [MarshalAs(UnmanagedType.LPWStr)][In] string pszName, [In] SHGDN uFlags, out IntPtr ppidlOut);
  25. }