SPropValue
S’applique à : Outlook 2013 | Outlook 2016
Décrit une propriété MAPI.
Propriété | Valeur |
---|---|
Fichier d’en-tête : |
Mapidefs.h |
Macros associées : |
CHANGE_PROP_TYPE, MVI_PROP, PROP_ID, PROP_TAG, PROP_TYPE |
typedef struct _SPropValue
{
ULONG ulPropTag;
ULONG dwAlignPad;
union _PV Value;
} SPropValue, FAR *LPSPropValue;
Members
ulPropTag
Balise de propriété pour la propriété . Les balises de propriété sont des entiers non signés 32 bits constitués de l’identificateur unique de la propriété dans les 16 bits d’ordre élevé et du type de la propriété dans les 16 bits d’ordre inférieur.
dwAlignPad
Réservé pour MAPI ; n’utilisez pas.
Valeur
Union des valeurs de données, valeur spécifique dictée par le type de propriété. Le tableau suivant répertorie pour chaque type de propriété, le membre de l’union qui doit être utilisé et son type de données associé.
Type de propriété | Valeur | Type de données de value |
---|---|---|
PT_I2 ou PT_SHORT |
Je |
short int |
PT_I4 ou PT_LONG |
l |
LONG |
- |
Ul |
ULONG |
PT_R4 ou PT_FLOAT |
Flt |
float |
PT_R8 ou PT_DOUBLE |
Dbl |
double |
PT_BOOLEAN |
B |
unsigned short int |
PT_CURRENCY |
cur |
CURRENCY |
PT_APPTIME |
à |
double |
PT_SYSTIME |
Ft |
FILETIME |
PT_STRING8 |
lpszA |
LPSTR |
PT_BINARY |
Bin |
BYTE [array] |
PT_UNICODE |
lpszW |
LPWSTR |
PT_CLSID |
lpguid |
LPGUID |
PT_I8 ou PT_LONGLONG |
Li |
LARGE_INTEGER |
PT_MV_I2 |
Mvi |
SShortArray |
PT_MV_LONG |
MVI |
SLongArray |
PT_MV_R4 |
MVflt |
SRealArray |
PT_MV_DOUBLE |
MVdbl |
SDoubleArray |
PT_MV_CURRENCY |
MVcur |
SCurrencyArray |
PT_MV_APPTIME |
MVat |
SAppTimeArray |
PT_MV_SYSTIME |
MVft |
SDateTimeArray |
PT_MV_BINARY |
MVbin |
SBinaryArray |
PT_MV_STRING8 |
MVszA |
SLPSTRArray |
PT_MV_UNICODE |
MVszW |
SWStringArray |
PT_MV_CLSID |
MVguid |
SGuidArray |
PT_MV_I8 |
MVli |
SLargeIntegerArray |
PT_ERROR |
err |
SCODE |
PT_NULL ou PT_OBJECT |
x |
LONG |
PT_PTR ou PT_FILE_HANDLE |
Lpv |
VIDE* |
Remarques
Le membre ulPropTag se compose de deux parties :
Identificateur dans les 16 bits d’ordre élevé.
Type dans les 16 bits de bas ordre.
L’identificateur est une valeur numérique dans une plage particulière. MAPI définit des plages pour les identificateurs afin de décrire à quoi sert la propriété et qui est responsable de sa maintenance. MAPI définit des contraintes pour chacune des balises de propriété qu’il prend en charge dans le fichier d’en-tête Mapitags.h.
Le type indique le format de la valeur de la propriété. MAPI définit des constantes pour chacun des types de propriétés qu’il prend en charge dans le fichier d’en-tête Mapidefs.h.
Pour obtenir la liste complète des plages de propriétés valides pour les identificateurs et les types de propriétés, consultez l’annexe Identificateurs et types de propriétés .
Le membre dwAlignPad est utilisé comme remplissage pour garantir un alignement correct sur les ordinateurs qui nécessitent un alignement de 8 octets pour les valeurs de 8 octets. Les développeurs qui écrivent du code sur ces ordinateurs doivent utiliser des routines d’allocation de mémoire qui allouent les tableaux SPropValue sur des limites de 8 octets.
Le SPropValue::ul
membre n’a pas de type de propriété MAPI correspondant, car la VT_UI4 d’OLE n’est pas mappée à MAPI. Pour plus d’informations, consultez Vue d’ensemble du type de propriété MAPI et Mise à jour des propriétés MAPI.
Lorsque le type de propriété d’une valeur SPropValue indique PT_LONG, le membre actif de l’union UPV est généralement l
, et l’accès ul
constitue un comportement non défini selon la norme C.