屬性類型
適用於:Outlook 2013 |Outlook 2016
MAPI 支援單一值和多重值屬性。 使用單一值屬性時,屬性有一個基底類型的值。 使用多重值屬性時,基底類型有多個值。
下表說明 MAPI 支援的單一值和多重值屬性類型。 對於具有對應多重值類型的每個單一值型別,多重值類型會出現在單一值型別之後的括弧中。
屬性類型 | 十六進位值 | 描述 |
---|---|---|
PT_UNSPECIFIED |
0000 |
表示屬性類型未知。 此屬性類型會保留以搭配介面方法使用。 |
PT_NULL |
0001 |
表示沒有屬性值。 這個屬性類型會保留供與介面方法搭配使用,而且與 OLE 類型VT_NULL相同。 |
PT_I2 (PT_MV_I2) |
0002 |
帶正負號的16位 (2位元組) 整數。 這個屬性類型與PT_SHORT (PT_MV_SHORT) 和 OLE 類型VT_I2相同。 |
PT_I4 (PT_MV_I4) |
0003 |
帶正負號的 32 位 (4 位元組) 整數。 這個屬性類型與PT_LONG (PT_MV_LONG) 和 OLE 類型VT_I4相同。 |
PT_FLOAT (PT_MV_FLOAT) |
0004 |
32 位 (8 位元組) 浮點值。 此屬性類型與 PT_R4 (PT_MV_R4) 和 OLE 類型VT_R4相同。 |
PT_DOUBLE (PT_MV_DOUBLE) |
0005 |
64 位 (8 位元組) 浮點值。 這個屬性類型與 PT_R8 相同,OLE 類型VT_R8和VT_DOUBLE。 |
PT_CURRENCY (PT_MV_CURRENCY ) |
0006 |
64 位 (8 位元組) 整數解譯為十進位。 此屬性類型與 Microsoft Visual Basic CURRENCY 類型相容,與 OLE 類型VT_CY相同。 |
PT_APPTIME (PT_MV_APPTIME) |
0007 |
解譯為日期和時間的雙精度浮點數。 整數部分是日期,而分數部分是時間。 此屬性類型與 OLE 類型VT_DATE相同,而且與 Microsoft Visual Basic 時間表示法相容。 |
PT_ERROR |
000A |
SCODE 值;32 位 (4 位元組) 無符號整數。 此屬性類型與 OLE 類型VT_ERROR相同。 |
PT_BOOLEAN (PT_MV_12) |
000B |
16 位 (2 位元組) 布爾值,其中零 等於 false 且非零等於 true。 此屬性類型與 OLE 類型VT_BOOL相同。 |
PT_OBJECT |
000D |
實作 IUnknown 介面之物件的指標。 此屬性類型類似於數種 OLE 類型,例如 VT_UNKNOWN。 |
PT_I8 (PT_MV_I8) |
0014 |
帶正負號的64位 (使用 LARGE_INTEGER結構的8位元組 ) 整數。 這個屬性類型與PT_I8和 OLE 類型VT_I8相同。 |
PT_STRING8 (PT_MV_STRING8) |
001E |
以 Null 結尾的 8 位 (2 位元組) 字元字串。 此屬性類型與 OLE 類型VT_LPSTR相同。 |
PT_TSTRING (PT_MV_TSTRING) |
001F |
以 Null 結尾的 16 位 (2 位元組) 字元字串。 使用 UNICODE 符號編譯時,具有此類型的屬性類型會重設為PT_UNICODE,並在未使用 UNICODE 符號編譯時重設為 PT_STRING8。 這個屬性類型與所產生屬性的 OLE 類型VT_LPSTR相同,PT_STRING8屬性和PT_UNICODE屬性的VT_LPWSTR |
PT_SYSTIME (PT_MV_SYSTIME) |
0040 |
64 位 (8 位元組) 整數數據,以及 FILETIME 結構形式的時間值。 此屬性類型與 OLE 類型VT_FILETIME相同。 |
PT_CLSID (PT_MV_CLSID) |
0048 |
CLSID 結構值。 此屬性類型與 OLE 類型VT_CLSID相同。 |
PT_SVREID |
00FB |
變數大小,16 位 (2 位元組) COUNT ,後面接著 結構。 |
PT_SRESTRICT |
00FD |
變數大小,代表一或多個限制結構的位元組陣列。 |
PT_ACTIONS |
00FE |
變數大小、16 位 (2 位元組) 動作 計數 (非位元組) 後面接著許多規則動作結構。 |
PT_BINARY (PT_MV_BINARY) |
0102 |
SBinary 結構值,已計算位元組陣列。 |
注意事項
若要判斷多重值屬性類型的十六進位值,或PT_MV旗標 (0x00001000) 為屬性類型的十六進位值。 例如,PT_MV_UNICODE的十六進位值是0x101F,而PT_MV_BINARY的十六進位值則是0x1102。
MAPI 會與 [OLE 變體] 共用實值類型編號。 不過,並非所有 OLE 類型都是針對 MAPI 指定。 特別是,不帶正負號的類型,例如 VT_UI4 在MAPI中沒有對應的類型。 PT_I2/I4/I8 屬性值的比較,例如在 評估 [restrictions] (篩選) 期間,會以帶正負號的比較方式執行。