estructura de KNOWNFOLDER_DEFINITION (shobjidl_core.h)
Define los detalles de una carpeta conocida.
Sintaxis
typedef struct KNOWNFOLDER_DEFINITION {
KF_CATEGORY category;
LPWSTR pszName;
LPWSTR pszDescription;
KNOWNFOLDERID fidParent;
LPWSTR pszRelativePath;
LPWSTR pszParsingName;
LPWSTR pszTooltip;
LPWSTR pszLocalizedName;
LPWSTR pszIcon;
LPWSTR pszSecurity;
DWORD dwAttributes;
KF_DEFINITION_FLAGS kfdFlags;
FOLDERTYPEID ftidType;
} KNOWNFOLDER_DEFINITION;
Miembros
category
Tipo: KF_CATEGORY
Valor único de las constantes KF_CATEGORY que clasifica la carpeta como virtual, fija, común o por usuario.
pszName
Tipo: LPWSTR
Puntero al nombre canónico no localizado de la carpeta conocida, almacenada como una cadena Unicode terminada en null. Si esta carpeta es una carpeta común o por usuario, este valor también se usa como nombre de valor de la configuración del Registro "Carpetas de Shell de usuario". Este nombre está pensado para ser un nombre único y legible. Se recomienda que terceros sigan el formato Company.Application.Name
. El nombre proporcionado aquí no debe confundirse con el nombre para mostrar.
pszDescription
Tipo: LPWSTR
Puntero a una breve descripción de la carpeta conocida, almacenada como una cadena Unicode terminada en null. Esta descripción debe incluir el propósito y el uso de la carpeta.
fidParent
Tipo: KNOWNFOLDERID
Un valor KNOWNFOLDERID que asigna un nombre a otra carpeta conocida para que actúe como carpeta primaria. Solo se aplica a carpetas comunes y por usuario. Este valor se usa junto con pszRelativePath. Consulte Comentarios para obtener más detalles.
Este valor es opcional si no se proporciona ningún valor para pszRelativePath.
pszRelativePath
Tipo: LPWSTR
Opcional. Puntero a una ruta de acceso relativa a la carpeta primaria especificada en fidParent. Se trata de una cadena Unicode terminada en null, hace referencia a la ruta de acceso del sistema de archivos físico y no se localiza. Solo se aplica a carpetas comunes y por usuario. Consulte Comentarios para obtener más detalles.
pszParsingName
Tipo: LPWSTR
Puntero a la ruta de acceso de la carpeta del espacio de nombres shell de la carpeta, almacenada como una cadena Unicode terminada en null. Solo se aplica a carpetas virtuales. Por ejemplo, Control Panel
tiene un nombre de análisis de ::%CLSID_MyComputer%::%CLSID_ControlPanel%
.
pszTooltip
Tipo: LPWSTR
Opcional. Puntero al recurso de información sobre herramientas predeterminado que se usa para esta carpeta conocida cuando se crea. Se trata de una cadena Unicode terminada en null con este formato:
Nombre del módulo, identificador de recurso
Por ejemplo, @%_SYS_MOD_PATH%,-12688
es la información sobre herramientas para Imágenes comunes. Cuando se crea la carpeta, esta cadena se almacena en la copia de esa carpeta de Desktop.ini. Más adelante, otras API de Shell pueden cambiarla. Este recurso se puede localizar.
Esta información no es necesaria para las carpetas virtuales.
pszLocalizedName
Tipo: LPWSTR
Opcional. Puntero al recurso de nombre localizado predeterminado que se usa cuando se crea la carpeta. Se trata de una cadena Unicode terminada en null con este formato:
Nombre del módulo, identificador de recurso
Cuando se crea la carpeta, esta cadena se almacena en la copia de esa carpeta de Desktop.ini. Más adelante, otras API de Shell pueden cambiarla.
Esta información no es necesaria para las carpetas virtuales.
pszIcon
Tipo: LPWSTR
Opcional. Puntero al recurso de icono predeterminado que se usa cuando se crea la carpeta. Se trata de una cadena Unicode terminada en null con este formato:
Nombre del módulo, identificador de recurso
Cuando se crea la carpeta, esta cadena se almacena en la copia de esa carpeta de Desktop.ini. Más adelante, otras API de Shell pueden cambiarla.
Esta información no es necesaria para las carpetas virtuales.
pszSecurity
Tipo: LPWSTR
Opcional. Puntero a una cadena de formato del lenguaje de definición de descriptores de seguridad. Se trata de una cadena Unicode terminada en null que describe el descriptor de seguridad predeterminado que recibe la carpeta cuando se crea. Si este parámetro es NULL, la nueva carpeta hereda el descriptor de seguridad de su elemento primario. Esto es especialmente útil para las carpetas comunes a las que acceden todos los usuarios.
dwAttributes
Tipo: DWORD
Opcional. Atributos predeterminados del sistema de archivos proporcionados a la carpeta cuando se crea. Por ejemplo, el archivo podría estar oculto y de solo lectura (FILE_ATTRIBUTE_HIDDEN y FILE_ATTRIBUTE_READONLY). Para obtener una lista completa de los valores posibles, consulte el parámetro dwFlagsAndAttributes de la función CreateFile . Si no es necesario, establézcalo en -1.
kfdFlags
Tipo: KF_DEFINITION_FLAGS
Opcional. Uno de los valores de la enumeración KF_DEFINITION_FLAGS que le permite restringir el redireccionamiento, permitir itinerancia de PC a PC y controlar el momento en que se crea la carpeta conocida. Si no es necesario, establézcalo en 0.
ftidType
Tipo: FOLDERTYPEID
Uno de los valores FOLDERTYPEID que identifica el tipo de carpeta conocido en función de su contenido (como documentos, música o fotografías). Este valor es un GUID.
Comentarios
Los valores fidParent y pszRelativePath funcionan juntos. Por ejemplo, supongamos que va a definir una carpeta denominada MyNewFolder y desea crear esa carpeta como ...< Username>\AppData\Local\MyApp\MyNewFolder. Proporcione FOLDERID_LocalAppData en fidParent para representar ...< Username>\AppData\Local. Proporcione "\MyApp\MyNewFolder" en pszRelativePath.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Encabezado | shobjidl_core.h (incluya Shobjidl.h) |
Consulte también
IKnownFolder::GetFolderDefinition