Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los identificadores de propiedad reservados no se pueden usar como identificadores de propiedad (ID). Cualquier identificador de propiedad (ID) se puede usar excepto 0, 1 y cualquier valor mayor o igual que 0x80000000. Estos valores de identificador de propiedad están reservados para su uso por parte de las aplicaciones.
En la tabla siguiente se enumeran los identificadores de propiedad reservada y la descripción de lo que está reservado el identificador de propiedad.
| Identificador de propiedad reservada | Descripción |
|---|---|
| 0 | Reservado para crear un propiedad opcional Establecer diccionario de nombres para mostrar. Esto permite a los usuarios establecer propiedades para adjuntar significado a las propiedades, más allá de las proporcionadas por el indicador de tipo. |
| 1 | Reservado como indicador de la página de códigos (Windows) o script (Macintosh) que se va a usar al interpretar las cadenas del conjunto de propiedades. Todos los valores de cadena del conjunto de propiedades deben almacenarse con la misma página de códigos. El valor del sistema operativo de origen en el encabezado del conjunto de propiedades (PROPERTYSETHEADER::d wOSVer) determina si el indicador de página de códigos corresponde a una página de códigos de Windows o a un script de Macintosh. |
| 0x80000000 | Reservado como indicación de la configuración regional para la que se escribe el conjunto de propiedades. La configuración regional predeterminada para un conjunto de propiedades es la configuración regional predeterminada del sistema (LOCALE_SYSTEM_DEFAULT). Para obtener más información sobre LOCALE_SYSTEM_DEFAULT, consulte las API de Win32. El valor predeterminado se usa en caso de que el indicador de configuración regional no exista en el conjunto de propiedades. |
| 0x80000003 | Reservado como indicador de los comportamientos del conjunto de propiedades. Este valor de identificador de propiedad es un VT_UI4 y comienza con un tipo de datos DWORD de que contiene el valor VT_UI4 seguido de un DWORD que indica el comportamiento del conjunto de propiedades. Actualmente, el único bit de este valor definido es el bit de orden bajo (0x1). Si se establece este bit, indica que los nombres del conjunto de propiedades, indicados por el identificador de propiedad 0, deben considerarse distingue mayúsculas de minúsculas. Si este bit no se establece o si la propiedad de comportamiento (id. 0x80000003) no existe, los nombres deben considerarse que no distinguen mayúsculas de minúsculas. |
| 0xFFFFFFFF | Reservado para la comodidad de la programación. Nunca debería aparecer en un conjunto de propiedades serializadas. |
Los identificadores de propiedad con el conjunto de bits alto (es decir, valores negativos) están reservados para su uso futuro por Parte de Microsoft.
De las propiedades reservadas, las que tienen valores de identificador en el intervalo 0x80000000 a 0xBFFFFFFF se consideran de solo lectura por implementaciones que no entienden su significado. Por ejemplo, si una implementación no entiende el significado de la propiedad 0x80000000, debe permitir que esa propiedad se lea, pero no se escriba o elimine. Esta implementación debe permitir que una propiedad del intervalo 0xC0000000 0xFFFFFFFE leer, escribir o eliminar. El id. de propiedad 0xFFFFFFFF es un valor reservado y nunca debe aparecer en un conjunto de propiedades serializadas.
Configuración regional del conjunto de propiedades
Las aplicaciones pueden optar por admitir la configuración regional o usar el comportamiento predeterminado. Se recomienda que las aplicaciones permitan a los usuarios especificar una configuración regional en funcionamiento. Estas aplicaciones deben escribir el identificador de configuración regional especificado por el usuario en la propiedad . Las aplicaciones que usan la configuración regional predeterminada del usuario (LOCALE_USER_DEFAULT) deben escribir el identificador de configuración regional predeterminado del usuario en la propiedad . Para obtener más información sobre LOCALE_USER_DEFAULT, consulte la API de Win32.
Nota
Si se usa la interfazIPropertySetStorage para crear un conjunto de propiedades, la configuración regional predeterminada del usuario se escribe automáticamente como indicador de configuración regional.
Las aplicaciones también deben controlar el caso de un objeto externo, que es uno en el que la configuración regional no es la configuración regional de la aplicación, la configuración regional del usuario o la configuración regional del sistema.
La propiedad indicadora de configuración regional es de tipo VT_U14 y, por lo tanto, consta de un DWORD que contiene VT_U14, seguido de un DWORD que contiene el identificador de configuración regional (LCID), tal como se define en la API de Win32.
Indicador de página de códigos
Cuando una aplicación que no es el autor de un conjunto de propiedades cambia una propiedad de tipo cadena en el conjunto, debe examinar el indicador de página de códigos y realizar una de las siguientes acciones:
- Escriba la cadena en el formato especificado por el indicador de página de códigos.
- Reemplace y vuelva a escribir para cambiar la página de códigos.
Si una aplicación no puede reconocer este indicador, no debe modificar la propiedad . Todos los creadores de conjuntos de propiedades deben escribir un indicador de página de códigos; Sin embargo, si el indicador de página de códigos no está presente, se debe asumir la página de códigos predominante en el equipo del lector.
Nota
Si se usa la interfazIPropertySetStorage para crear un conjunto de propiedades, el indicador de página de códigos se escribe automáticamente.
Los valores posibles para la página de códigos se proporcionan en la API de Win32 (para obtener más información, consulte la función getACP) y dentro del volumen VI de Macintosh, páginas 14-111. (Es posible que estos recursos no estén disponibles en algunos idiomas y países). Por ejemplo, la página de códigos US ANSI se representa mediante 0x04E4 (1252 en decimal) mientras que la página de códigos de Unicode es 0x04B0 (1200 en decimal).
Se recomienda usar la página de códigos Unicode siempre que sea posible y usar VT_LPWSTR en lugar de VT_LPSTR para evitar <multibyte:> conversiones Unicode durante el almacenamiento y la recuperación. El uso de la misma página de códigos para todos los conjuntos de propiedades es la única manera de lograr conjuntos de propiedades interoperables en todo el mundo. En la página de códigos Unicode o no Unicode, tenga en cuenta que el recuento al principio de un VT_LPSTR o VT_BSTR es un recuento de de bytes de y no un recuento de caracteres. Este recuento de bytes incluye uno o dos bytes cero al final de la cadena (el terminador NULL de la cadena).
El identificador de propiedad 1 es un tipo de VT_I2 y comienza con un DWORD que contiene el valor VT_I2 seguido de un SHORT que indica la página de códigos.