Search
Module:
Directory

   Desktop Functions:

   Smart Device Functions:


Show Recent Changes
Subscribe (RSS)
Misc. Pages
Comments
FAQ
Helpful Tools
Playground
Suggested Reading
Website TODO List
Download Visual Studio Add-In

IKnownFolder (Interfaces)
 
.
Summary
TODO - a short description

C# Definition:

[ComImport, Guid ( "8BE2D872-86AA-4d47-B776-32CCA40C7018" ), InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
interface IKnownFolderManager
[ComImport, Guid ( "38521333-6A87-46A7-AE10-0F16706816C3" ), InterfaceType ( ComInterfaceType.InterfaceIsIUnknown )]
interface IKnownFolder
{
    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void FolderIdFromCsidl ( [In] int nCsidl, out Guid pfid );
    void GetId ( out Guid pkfid );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void FolderIdToCsidl ( [In] ref Guid rfid, out int pnCsidl );
    // Not yet supported - adding to fill slot in vtable
    void spacer1 ( );
    //[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
    //void GetCategory(out mbtagKF_CATEGORY pCategory);

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void GetFolderIds ( [Out] IntPtr ppKFId, [In, Out] ref uint pCount );
    void GetShellItem ( [In] uint dwFlags, ref Guid riid, out IShellItem ppv );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void GetFolder ( [In] ref Guid rfid, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
    void GetPath ( [In] uint dwFlags, [MarshalAs ( UnmanagedType.LPWStr )] out string ppszPath );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void GetFolderByName ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszCanonicalName,
                   [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
    void SetPath ( [In] uint dwFlags, [In, MarshalAs ( UnmanagedType.LPWStr )] string pszPath );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void RegisterFolder ( [In] ref Guid rfid, [In] ref NativeMethods.KNOWNFOLDER_DEFINITION pKFD );
    void GetLocation ( [In] uint dwFlags, [Out, ComAliasName ( "ShellObjects.wirePIDL" )] IntPtr ppidl );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void UnregisterFolder ( [In] ref Guid rfid );
    void GetFolderType ( out Guid pftid );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void FindFolderFromPath ( [In, MarshalAs ( UnmanagedType.LPWStr )] string pszPath,
                  [In] NativeMethods.FFFP_MODE mode,
                  [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );
    void GetRedirectionCapabilities ( out uint pCapabilities );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void FindFolderFromIDList ( [In] IntPtr pidl, [MarshalAs ( UnmanagedType.Interface )] out IKnownFolder ppkf );

    [MethodImpl ( MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime )]
    void Redirect ( [In] ref Guid rfid, [In] IntPtr hwnd, [In] uint Flags,
            [In, MarshalAs ( UnmanagedType.LPWStr )] string pszTargetPath, [In] uint cFolders,
            [In] ref Guid pExclusion, [MarshalAs ( UnmanagedType.LPWStr )] out string ppszError );
    // Not yet supported - adding to fill slot in vtable
    void spacer2 ( );
    //[MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)]
    //void GetFolderDefinition(out tagKNOWNFOLDER_DEFINITION pKFD);
}

VB Definition:

<ComImport> _
<Guid("TODO")> _
'TODO: Insert <InterfaceType(ComInterfaceType.InterfaceIsIUnknown)> _ if this doesn't derive from IDispatch
Interface IKnownFolderManager
Interface IKnownFolder
   TODO
End Interface

User-Defined Types:

None.

Notes:

None.

Documentation
Documentation

Please edit this page!

Do you have...

  • helpful tips?
  • corrections to the existing content?
  • alternate definitions?
  • additional languages you want to include?

Select "Edit This Page" on the right hand toolbar and edit it! Or add new pages containing any supporting types needed.

 
Access PInvoke.net directly from VS:
Terms of Use
Edit This Page
Find References
Show Printable Version
Revisions