Compartir a través de


Descripción de los controladores de propiedades

Las propiedades se representan mediante identificadores conocidos como identificadores de propiedad (PID). Cada propiedad DEBE tener un identificador único global (GUID). Este identificador consta de un GUID, que representa una colección de propiedades denominada conjunto de propiedades más una cadena o un entero de 32 bits para identificar la propiedad dentro del conjunto. Si se usa el formato entero de ID, los valores 0x00000000, 0xFFFFFFFF y 0xFFFFFFFE se consideran no válidos. Los proveedores pueden garantizar que sus propiedades se definen de forma única colocandolas en un conjunto de propiedades definido por sus propios GUID.

Importante

Es fundamental definir las propiedades cuidadosamente y estratégicamente para la primera versión del esquema. Los cambios realizados en las propiedades personalizadas (como el ancho de columna o el tipo de propiedad) no se reflejarán en la base de datos después de que se haya registrado un esquema. La única manera de que estos cambios se reconozcan después de que el esquema se haya registrado una vez en un sistema sería recompilar el índice y, a continuación, registrar el nuevo esquema, o registrar el esquema y, a continuación, crear una nueva propiedad (que consta de un nombre canónico y un PKEY) para cada versión posterior; por ejemplo PKEY_GroupName_PropertyNameV2, , PKEY_GroupName_PropertyNameV3y así sucesivamente). No se recomienda crear nuevas propiedades de esta manera, ya que varias columnas extrañas pueden afectar al rendimiento del sistema.

 

Este tema se organiza de la siguiente manera:

Metadatos

En Windows Vista y versiones posteriores, un nuevo sistema de propiedades basado en metadatos es fundamental para organizar elementos como archivos, correo electrónico y contactos. En este nuevo sistema de propiedades, los elementos se pueden buscar en función de sus metadatos y los usuarios pueden leer o escribir esos metadatos. Los metadatos de este sistema se representan mediante un conjunto extensible de propiedades implementadas como pares nombre-valor.

En Windows Vista y versiones posteriores, un amplio conjunto de propiedades abarca los detalles de elementos como fotos, música, documentos, mensajes, contactos y archivos. Los proveedores de software independientes (ISV) pueden introducir sus propias propiedades en la plataforma si ninguna propiedad existente satisface sus necesidades.

Abrir metadatos

El sistema de propiedades de Windows Vista y versiones posteriores es un sistema de metadatos abierto. Un formato de archivo almacena cualquier propiedad asignada a él y expone ese valor cuando se consulta, independientemente de la relevancia o el significado. Esto permite a los desarrolladores de terceros adjuntar propiedades adicionales al archivo sin necesidad de un cambio en el controlador de propiedades asociado a él. Los metadatos abiertos son un concepto eficaz. Para obtener más información sobre cómo admitir metadatos abiertos para un formato de archivo basado en XML, vea "Admitir metadatos abiertos" en Inicializar controladores de propiedades.

Nota:

Los controladores de propiedades siempre están asociados a tipos de archivo específicos; Por lo tanto, si el formato de archivo contiene propiedades que requieren un controlador de propiedades personalizado, siempre debe registrar una extensión de nombre de archivo única para cada formato de archivo.

 

Acerca de los controladores de propiedades

En Windows Vista y versiones posteriores, Windows tiene un sistema de propiedades extensible para almacenar y recuperar metadatos en los archivos y elementos de datos a los que accede. El Explorador de Windows y el sistema de Windows Search, junto con otras aplicaciones, usan controladores de propiedades para leer y modificar estos metadatos. Si es un desarrollador propietario de un tipo de archivo específico, debe registrar un controlador de propiedades para conceder al sistema de propiedades acceso a los metadatos de los archivos. En algunos casos, es posible que pueda usar un controlador de propiedades existente que pueda leer y comprender el formato de archivo y sus propiedades; en otros casos, es posible que tenga que desarrollar un nuevo controlador de propiedades para el tipo de archivo.

El primer paso para escribir un controlador de propiedades es tener en cuenta qué propiedades admite el tipo de archivo. Los valores de propiedad se almacenan en el flujo de archivos, principalmente para permitir la transportabilidad. Cuando los valores de propiedad se almacenan en el propio archivo, como están en este sistema, un usuario puede copiar un archivo en otro equipo, una unidad flash USB u otro sistema de archivos, o enviar el archivo como datos adjuntos de correo electrónico, las propiedades viajan con el archivo y nunca se pierden ni sincronizan. Por lo tanto, si el formato de archivo admite el almacenamiento de información adicional, es mejor almacenar las propiedades en el propio archivo.

El siguiente paso es determinar qué propiedades debe proporcionar el archivo. Inicialmente, podría pensar que un conjunto limitado de propiedades es adecuado. Un archivo de audio solo podía admitir propiedades relacionadas con audio y terminar allí. Sin embargo, ese archivo de audio podría ser una grabación de una sesión de un tribunal de derecho, archivado por un bufete de abogados. En ese caso, la firma de abogados ciertamente querría asociar otras propiedades que no son de audio con este archivo, como el número de caso. El proveedor del formato de archivo de audio no puede determinar posiblemente todos los escenarios en los que se usará su formato. Por lo tanto, deben considerar la posibilidad de habilitar el almacenamiento general de cualquier propiedad arbitraria admitida por el sistema de propiedades.

Tecnología heredada

La tecnología de transmisión secundaria del sistema de archivos NT (NTFS) de Microsoft Windows se desarrolló para admitir la persistencia de información adicional con el archivo a través de un conjunto de secuencias alternativo en la capa del sistema de archivos. Es posible que se pregunte por qué esas secuencias secundarias no se usan como método principal para almacenar propiedades, especialmente con compatibilidad con metadatos abiertos. La razón principal es la transportabilidad de esta información adicional. Desafortunadamente, estas secuencias alternativas se quitan en muchos escenarios, incluida la compatibilidad con el almacenamiento en caché del lado cliente (CSC), el envío de archivos como datos adjuntos y la copia de archivos en un almacén que no es NTFS.

Las secuencias secundarias no proporcionan una solución sólida en la que se garantiza que las propiedades viajen con el archivo y, por lo tanto, el sistema de propiedades de Windows Vista no proporciona un mecanismo integrado que aprovecha las secuencias NTFS secundarias para el almacenamiento de propiedades. Los ISV también se desaconsejan mucho de los controladores de propiedades de compilación que usan secuencias secundarias para el almacenamiento de propiedades. Por supuesto, hay escenarios en los que las secuencias secundarias NTFS son adecuadas, especialmente cuando las aplicaciones pueden garantizar que el archivo con el que se trabaja siempre se almacena en un volumen NTFS y no viajará como resultado de la interacción del usuario final.

Usar nombres de tipo

Usar listas de propiedades

Inicializar controladores de propiedades

Registro y distribución de controladores de propiedades

Procedimientos recomendados y preguntas más frecuentes del controlador de propiedades