Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

KNOWN_FOLDER_FLAG enumeration

Specify special retrieval options for known folders. These values supersede CSIDL values, which have parallel meanings.

Syntax


typedef enum  { 
  KF_FLAG_SIMPLE_IDLIST                = 0x00000100,
  KF_FLAG_NOT_PARENT_RELATIVE          = 0x00000200,
  KF_FLAG_DEFAULT_PATH                 = 0x00000400,
  KF_FLAG_INIT                         = 0x00000800,
  KF_FLAG_NO_ALIAS                     = 0x00001000,
  KF_FLAG_DONT_UNEXPAND                = 0x00002000,
  KF_FLAG_DONT_VERIFY                  = 0x00004000,
  KF_FLAG_CREATE                       = 0x00008000,
  KF_FLAG_NO_APPCONTAINER_REDIRECTION  = 0x00010000,
  KF_FLAG_ALIAS_ONLY                   = 0x80000000
} KNOWN_FOLDER_FLAG;

Constants

KF_FLAG_SIMPLE_IDLIST

0x00000100. Build a simple IDList (PIDL) This value can be used when you want to retrieve the file system path but do not specify this value if you are retrieving the localized display name of the folder because it might not resolve correctly.

KF_FLAG_NOT_PARENT_RELATIVE

0x00000200. Gets the folder's default path independent of the current location of its parent. KF_FLAG_DEFAULT_PATH must also be set.

KF_FLAG_DEFAULT_PATH

0x00000400. Gets the default path for a known folder. If this flag is not set, the function retrieves the current—and possibly redirected—path of the folder. The execution of this flag includes a verification of the folder's existence unless KF_FLAG_DONT_VERIFY is set.

KF_FLAG_INIT

0x00000800. Initializes the folder using its Desktop.ini settings. If the folder cannot be initialized, the function returns a failure code and no path is returned. This flag should always be combined with KF_FLAG_CREATE.

If the folder is located on a network, the function might take a longer time to execute.

KF_FLAG_NO_ALIAS

0x00001000. Gets the true system path for the folder, free of any aliased placeholders such as %USERPROFILE%, returned by SHGetKnownFolderIDList and IKnownFolder::GetIDList. This flag has no effect on paths returned by SHGetKnownFolderPath and IKnownFolder::GetPath. By default, known folder retrieval functions and methods return the aliased path if an alias exists.

KF_FLAG_DONT_UNEXPAND

0x00002000. Stores the full path in the registry without using environment strings. If this flag is not set, portions of the path may be represented by environment strings such as %USERPROFILE%. This flag can only be used with SHSetKnownFolderPath and IKnownFolder::SetPath.

KF_FLAG_DONT_VERIFY

0x00004000. Do not verify the folder's existence before attempting to retrieve the path or IDList. If this flag is not set, an attempt is made to verify that the folder is truly present at the path. If that verification fails due to the folder being absent or inaccessible, the function returns a failure code and no path is returned.

If the folder is located on a network, the function might take a longer time to execute. Setting this flag can reduce that lag time.

KF_FLAG_CREATE

0x00008000. Forces the creation of the specified folder if that folder does not already exist. The security provisions predefined for that folder are applied. If the folder does not exist and cannot be created, the function returns a failure code and no path is returned. This value can be used only with the following functions and methods:

KF_FLAG_NO_APPCONTAINER_REDIRECTION

0x00010000. Introduced in Windows 7: When running inside an app container, or when providing an app container token, this flag prevents redirection to app container folders. Instead, it retrieves the path that would be returned where it not running inside an app container.

KF_FLAG_ALIAS_ONLY

0x80000000. Introduced in Windows 7. Return only aliased PIDLs. Do not use the file system path.

Remarks

These values, with the exception of KF_FLAG_ALIAS_ONLY, were defined in Windows Vista as individual constants. They are defined as an enumeration only in Windows 7 and later. However, all underlying numerical values are the same in either form.

Requirements

Minimum supported client

Windows 7 [desktop apps only]

Minimum supported server

Windows Server 2008 R2 [desktop apps only]

Header

Shlobj.h

See also

SHCreateItemInKnownFolder
IKnownFolder::GetShellItem
Known Folders Sample

 

 

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.