MAPI 定数

適用対象: Outlook 2013 | Outlook 2016

このトピックでは、MAPI API で使用する定数の定義、MAPI インターフェイス宣言、クラスとインターフェイス識別子について説明します。

クラスとインターフェイス識別子

他の指定がなければ、Microsoft Windows ソフトウェア開発キット (SDK) の guiddef.h ヘッダー ファイルで定義されている DEFINE_GUID マクロを使用して、グローバル一意識別子 (GUID) のシンボリック名とその値を関連付けます。

添付ファイル セキュリティ変換 API

このセクションでは、添付ファイル セキュリティ API に関する定数の定義とインターフェイス識別子について説明します。

// {b2533636-c3f3-416f-bf04-aefe41abaae2}
DEFINE_GUID(IID_IAttachmentSecurity, 0xb2533636, 0xc3f3, 0x416f, 0xbf, 0x04, 0xae, 0xfe, 0x41, 0xab, 0xaa, 0xe2);

純粋仮想関数 IsAttachmentBlocked を定義するには、Windows SDK の mapidefs.h ヘッダー ファイルで定義されている MAPIMETHOD マクロを使用します。

#define MAPI_IATTACHMENTSECURITY_METHODS(IPURE)         MAPIMETHOD(IsAttachmentBlocked)         (LPCWSTR pwszFileName, BOOL *pfBlocked) IPURE;

IAttachmentSecurity の仮想メソッド テーブルを定義するには、Windows SDK の mapidefs.h ヘッダー ファイルで定義されている DECLARE_MAPI_INTERFACE_ マクロを使用します。

DECLARE_MAPI_INTERFACE_(IAttachmentSecurity, IUnknown) 
{ 
    BEGIN_INTERFACE 
    MAPI_IUNKNOWN_METHODS(PURE) 
    MAPI_IATTACHMENTSECURITY_METHODS(PURE) 
};

MAPI-MIME 会話 API

このセクションでは、MAPI-MIME 会話 API に関する定数の定義、クラスとインターフェイス識別子について説明します。

定数 定義
CCSF_SMTP
0x0002
CCSF_NOHEADERS
0x0004
CCSF_USE_TNEF
0x0010
CCSF_INCLUDE_BCC
0x0020
CCSF_8BITHEADERS
0x0040
CCSF_USE_RTF
0x0080
CCSF_PLAIN_TEXT_ONLY
0x1000
CCSF_NO_MSGID
0x4000
CCSF_GLOBAL_MESSAGE
0x00200000
E_INVALIDARG
Microsoft Windows ソフトウェア開発キット (SDK) の winerror.h ヘッダーファイルで定義されています

クラス識別子

// {4e3a7680-b77a-11d0-9da5-00c04fd65685}
DEFINE_GUID(CLSID_IConverterSession, 0x4e3a7680, 0xb77a, 0x11d0, 0x9d, 0xa5, 0x0, 0xc0, 0x4f, 0xd6, 0x56, 0x85);

インターフェイス識別子

// {4b401570-b77b-11d0-9da5-00c04fd65685}
DEFINE_GUID(IID_IConverterSession, 0x4b401570, 0xb77b, 0x11d0, 0x9d, 0xa5, 0x0, 0xc0, 0x4f, 0xd6, 0x56, 0x85);

オフライン状態 API

このセクションでは、オフライン状態 API に関する定数の定義、クラスとインターフェイス識別子について説明します。

定数 定義
E_INVALIDARG
Microsoft Windows ソフトウェア開発キット (SDK) の winerror.h ヘッダーファイルで定義されています
E_NOINTERFACE
Windows (SDK) の winerror.h ヘッダー ファイルで定義されています
MAPIOFFLINE_ADVISE_DEFAULT
(ULONG) 0
MAPIOFFLINE_UNADVISE_DEFAULT
(ULONG) 0
MAPIOFFLINE_ADVISE_TYPE_STATECHANGE
1
MAPIOFFLINE_CAPABILITY_OFFLINE
0x1
MAPIOFFLINE_CAPABILITY_ONLINE
0x2
MAPIOFFLINE_FLAG_BLOCK
0x00002000
MAPIOFFLINE_FLAG_DEFAULT
0x00000000
MAPIOFFLINE_STATE_ALL
0x003f037f
オンラインまたはオフライン
MAPIOFFLINE_STATE_OFFLINE_MASK
0x00000003
MAPIOFFLINE_STATE_OFFLINE
0x00000001
MAPIOFFLINE_STATE_ONLINE
0x00000002

クラス識別子

//{fbeffd93-b11f-4094-842b-96dcd31e63d1}
DEFINE_GUID(GUID_GlobalState, 0xfbeffd93, 0xb11f, 0x4094, 0x84, 0x2b, 0x96, 0xdc, 0xd3, 0x1e, 0x63, 0xd1);

インターフェイス識別子

//{000672B5-0000-0000-c000-000000000046}
DEFINE_GUID(IID_IMAPIOffline, 0x000672B5, 0x0000, 0x0000, 0xc0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x46);
//{0317bde5-fc29-44cd-8dcd-36125a3be9ec}
DEFINE_GUID(IID_IMAPIOfflineNotify, 0x0317bde5, 0xfc29, 0x44cd, 0x8d, 0xcd, 0x36, 0x12, 0x5a, 0x3b, 0xe9, 0xec);
//{42175607-ff3e-4790-bc18-66c8643e6424
DEFINE_GUID(IID_IMAPIOfflineMgr, 0x42175607, 0xFF3E, 0x4790, 0xbc, 0x18, 0x66, 0xc8, 0x64, 0x3e, 0x64, 0x24);

Outlook の名前付きプロパティ

このセクションでは、名前付きプロパティとその名前空間に関する定数の定義、および関連する他の定数について説明します。

名前付きプロパティの定義

#define dispidMeetingType0x0026 
#define dispidFileUnder0x8005 
#define dispidYomiFirstName 0x802C 
#define dispidYomiLastName 0x802D 
#define dispidYomiCompanyName 0x802E 
#define dispidWorkAddressStreet 0x8045 
#define dispidWorkAddressCity 0x8046 
#define dispidWorkAddressState 0x8047 
#define dispidWorkAddressPostalCode 0x8048 
#define dispidWorkAddressCountry 0x8049 
#define dispidWorkAddressPostOfficeBox 0x804A 
#define dispidInstMsg 0x8062 
#define dispidEmailDisplayName 0x8080 
#define dispidEmailAddrType 0x8082 
#define dispidEmailEmailAddress 0x8083 
#define dispidEmailOriginalDisplayName 0x8084 
#define dispidEmail1OriginalEntryID0x8085 
#define dispidEmail2DisplayName 0x8090 
#define dispidEmail2AddrType 0x8092 
#define dispidEmail2EmailAddress 0x8093 
#define dispidEmail2OriginalDisplayName 0x8094 
#define dispidEmail2OriginalEntryID0x8095 
#define dispidEmail3DisplayName 0x80A0 
#define dispidEmail3AddrType 0x80A2 
#define dispidEmail3EmailAddress 0x80A3 
#define dispidEmail3OriginalDisplayName 0x80A4 
#define dispidEmail3OriginalEntryID0x80A5 
#define dispidTaskStatus 0x8101 
#define dispidTaskStartDate 0x8104 
#define dispidTaskDueDate 0x8105 
#define dispidTaskActualEffort 0x8110 
#define dispidTaskEstimatedEffort 0x8111 
#define dispidTaskFRecur 0x8126 
#define dispidBusyStatus0x8205 
#define dispidLocation 0x8208 
#define dispidApptStartWhole 0x820D 
#define dispidApptEndWhole 0x820E 
#define dispidApptDuration 0x8213 
#define dispidRecurring 0x8223 
#define dispidTimeZoneStruct0x8233 
#define dispidAllAttendeesString 0x8238 
#define dispidToAttendeesString 0x823B 
#define dispidCCAttendeesString 0x823C 
#define dispidConfCheck0x8240 
#define dispidApptCounterProposal 0x8257 
#define dispidApptTZDefStartDisplay0x825E 
#define dispidApptTZDefEndDisplay0x825F 
#define dispidApptTZDefRecur0x8260 
#define dispidReminderTime0x8502 
#define dispidReminderSet 0x8503 
#define dispidFormStorage0x850F 
#define dispidPageDirStream0x8513 
#define dispidSmartNoAttach 0x8514 
#define dispidCommonStart 0x8516 
#define dispidCommonEnd 0x8517 
#define dispidFormPropStream0x851B 
#define dispidRequest 0x8530 
#define dispidCompanies 0x8539 
#define dispidContacts0x853A 
#define dispidPropDefStream0x8540 
#define dispidScriptStream0x8541 
#define dispidCustomFlag0x8542 
#define dispidReminderNextTime 0x8560 
#define dispidHeaderItem0x8578 
#define dispidUseTNEF0x8582 
#define dispidToDoTitle0x85A4 
#define dispidLogType 0x8700 
#define dispidLogStart 0x8706 
#define dispidLogDuration 0x8707 
#define dispidLogEnd 0x8708 

名前空間の定義

次のグローバル一意識別子 (GUID) は、名前付きプロパティの名前空間を表しています。

const GUID PS_INTERNET_HEADERS  = {0x00020386, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PS_PUBLIC_STRINGS    = {0x00020329, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Appointment= {0x00062002, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Address       = {0x00062004, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Common        = {0x00062008, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Log           = {0x0006200A, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Meeting = {0x6ED8DA90, 0x450B, 0x101B, {0x98, 0xDA, 0x00, 0xAA, 0x00, 0x3F, 0x13, 0x05}}; 
const GUID PSETID_Task          = {0x00062003, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 

PSETID の定義については、MAPI ストアのセクションを参照してください。

その他の定数

定数 定義
INSP_ONEOFFFLAGS
0xD000000
INSP_PROPDEFINITION
0x2000000
MNID_ID
mapidefs.h ヘッダー ファイルで定義されています。
MNID_STRING
mapidefs.h ヘッダー ファイルで定義されています。
mtgNone
0x0
mtgRequest
0x00000001
mtgFullUpdate
0x00010000
mtgInfoUpdate
0x00020000
mtgOutofDate
0x00080000
mtgDelegated
0x00100000

レプリケーション API

このセクションでは、レプリケーション API に関する定数の定義、MAPI インターフェイス宣言、クラスとインターフェイス識別子について説明します。

以下は、MAPI サービス プロバイダーを特定する MAPIUID 構造です。

const MAPIUID g_muidProvPrvNST = 
 { 0xE9, 0x2F, 0xEB, 0x75, 0x96, 0x50, 0x44, 0x86, 
      0x83, 0xB8, 0x7D, 0xE5, 0x22, 0xAA, 0x49, 0x48 };
定数 定義
DNH_OK
0x00010000
DNT_OK
0x00010000
HSF_LOCAL
0x00000008
HSF_COPYDESTRUCTIVE
0x00000010
HSF_OK
0x00010000
MDB_OST_LOGON_UNICODE
((ULONG) 0x00000800)
MDB_OST_LOGON_ANSI
((ULONG) 0x00001000)
SHOW_SOFT_DELETES
((ULONG) 0x00000002)
SS_ACTIVE
0
SS_SUSPENDED
1
SYNC_UPLOAD_HIERARCHY
0x00000001
SYNC_DOWNLOAD_HIERARCHY
0x00000002
SYNC_UPLOAD_CONTENTS
0x00000040
SYNC_DOWNLOAD_CONTENTS
0x00000080
SYNC_OUTGOING_MAIL
0x00000200
SYNC_BACKGROUND
0x00001000
SYNC_THESE_FOLDERS
0x00020000
SYNC_HEADERS
0x02000000
UPC_OK
0x00010000
UPD_ASSOC
0x00000001
UPD_MOV
0x00000002
UPD_OK
0x00010000
UPD_MOVED
0x00020000
UPD_UPDATE
0x00040000
UPD_COMMIT
0x00080000
UPF_NEW
0x00000001
UPF_MOD_PARENT
0x00000002
UPF_MOD_PROPS
0x00000004
UPF_DEL
0x00000008
UPF_OK
0x00010000
UPH_OK
0x00010000
UPM_ASSOC
0x00000001
UPM_NEW
0x00000002
UPM_MOV
0x00000004
UPM_MOD_PROPS
0x00000008
UPM_HEADER
0x00000010
UPM_OK
0x00010000
UPM_MOVED
0x00020000
UPM_COMMIT
0x00040000
UPM_DELETE
0x00080000
UPM_SAVE
0x00100000
UPR_ASSOC
0x00000001
UPR_READ
0x00000002
UPR_OK
0x00010000
UPR_COMMIT
0x00020000
UPS_UPLOAD_ONLY
0x00000001
UPS_DNLOAD_ONLY
0x00000002
UPS_ONE_FOLDER
0x00000004
UPS_THESE_FOLDERS
0x00000080
UPS_OK
0x00010000
UPT_OK
0x00010000
UPT_PUBLIC
0x00000001
UPV_ERROR
0x00010000
UPV_DIRTY
0x00020000
UPV_COMMIT
0x00040000

インターフェイス宣言

DECLARE_MAPI_INTERFACE_PTR(IExchangeImportHierarchyChanges,PXIHC);
DECLARE_MAPI_INTERFACE_PTR(IExchangeImportContentsChanges,PXICC);

インターフェイス識別子

//{4FDEEFF0-0319-11CF-B4CF-00AA0DBBB6E6}
DEFINE_GUID (IID_IPSTX, 0x4FDEEFF0, 0x0319, 0x11CF, 0xB4, 0xCF, 0x00, 0xAA, 0x0D, 0xBB, 0xB6, 0xE6)
//{2067A790-2A45-11D1-EB86-00A0C90DCA6D}
DEFINE_GUID (IID_IPSTX2, 0x2067A790, 0x2A45, 0x11D1, 0xEB, 0x86, 0x00, 0xA0, 0xC9, 0x0D, 0xCA, 0x6D)
//{55f15320-111b-11d2-a999-006008b05aa7}
DEFINE_GUID (IID_IPSTX3, 0x55f15320, 0x111b, 0x11d2, 0xa9, 0x99, 0x00, 0x60, 0x08, 0xb0, 0x5a, 0xa7)
//{aa2e2092-ac08-11d2-a2f9-0060b0ec3d4f}
DEFINE_GUID (IID_IPSTX4, 0xaa2e2092, 0xac08, 0x11d2, 0xa2, 0xf9, 0x00, 0x60, 0xb0, 0xec, 0x3d, 0x4f)
//{55f15322-111b-11d2-a999-006008b05aa7}
DEFINE_GUID (IID_IPSTX5, 0x55f15322, 0x111b, 0x11d2, 0xa9, 0x99, 0x00, 0x60, 0x08, 0xb0, 0x5a, 0xa7)
//{55f15323-111b-11d2-a999-006008b05aa7}
DEFINE_GUID (IID_IPSTX6, 0x55f15323, 0x111b, 0x11d2, 0xa9, 0x99, 0x00, 0x60, 0x08, 0xb0, 0x5a, 0xa7)
//{d2d85db4-840f-49b8-9982-07d2405ec6b7}
DEFINE_GUID (IID_IOSTX, 0xd2d85db4,  0x840f, 0x49b8, 0x99, 0x82, 0x07, 0xd2, 0x40, 0x5e, 0xc6, 0xb7)

開く IMAPIContainer::OpenEntryIMAPISession::OpenEntry または IMsgStore::OpenEntry で次の 2 つのインターフェイス識別子を使用し、フォルダー オブジェクトおよびメッセージ オブジェクトそれぞれに対するプロバイダー チェックを無視します。

//{57D333A0-F589-4b23-A3F9-85F82FEC153C}
DEFINE_GUID (IID_IMAPIFolderNoProvChk, 0x57D333A0, 0xF589, 0x4b23, 0xA3, 0xF9, 0x85, 0xF8, 0x2F, 0xEC, 0x15, 0x3C)
//{C3505457-7B2E-4c3b-A8D6-6DD949BB97A1}
DEFINE_GUID (IID_IMessageNoProvChk, 0xC3505457, 0x7B2E, 0x4c3b, 0xA8, 0xD6, 0x6D, 0xD9, 0x49, 0xBB, 0x97, 0xA1)

MAPI ストア

このセクションでは、MAPI ストアとインターフェイスする API で使用する、定数の定義およびインターフェイス識別子について説明します。

定数 定義 説明
fnevIndexing
((ULONG) 0x00010000)
ストア プロバイダーは、NOTIFICATION 構造の ulEventType メンバーに fnevIndexing を指定して、オブジェクトがインデックスを作成する準備ができていることをインデクサーに通知できます。 NOTIFICATION 構造の info メンバーには、EXTENDED_NOTIFICATION 構造が含まれます。
FS_NONE
0x00
クライアントは IFolderSupport::GetSupportMask を呼び出すことができ、返されたビットマスクを確認できます。 FS_NONE は、フォルダーが共有をサポートしていないことを示します。
FS_SUPPORTS_SHARING
0x01
クライアントは IFolderSupport::GetSupportMask を呼び出すことができ、返されたビットマスクを確認できます。 FS_SUPPORTS_SHARING は、フォルダーが共有をサポートしていることを示します。
INDEXING_SEARCH_OWNER
((ULONG) 0x00000001)
オブジェクトがインデックス作成の準備ができていることをインデクサーに通知するプロセスを識別します。
MNID_ID
Microsoft Windows ソフトウェア開発キット (SDK) の mapidefs.h ヘッダーファイルで定義されています
MAPINAMEID 構造の ulKind フィールドの値です。
MNID_STRING
Microsoft Windows ソフトウェア開発キット (SDK) の mapidefs.h ヘッダーファイルで定義されています。 MAPINAMEID 構造の ulKind フィールドの値です。
MSCAP_RES_ANNOTATION
((ULONG) 0x00000001)
クライアントが mscapSelector for IMSCapabilities::GetCapabilitiesMSCAP_SEL_RESTRICTIONを指定した場合、ストアが制限で無効なパラメーターを無視した場合、GetCapabilities はこの値を返すことができます。
MSCAP_SECURE_FOLDER_HOMEPAGES
((ULONG) 0x00000001)
クライアントが mscapSelectorIMSCapabilities::GetCapabilitiesMSCAP_SEL_FOLDERを指定した場合、ストアがフォルダー ホーム ページをサポートする既定以外のストアである場合、GetCapabilities はこの値を返すことができます。
STORE_PUSHER_OK
((ULONG) 0x00800000)
クライアントは PR_SUPPORT_MASK プロパティを取得して、メッセージ ストアの特性を決定できます。 ストア プロバイダーによって STORE_PUSHER_OK フラグがビットマスクに設定されると、MAPI プロトコル ハンドラーがストアをクロールしなくなります。この場合は、ストアが、すべての変更を通知によってインデクサーにプッシュし、メッセージのインデックスを作成することになります。

名前空間の定義

次のグローバル一意識別子 (GUID) は、名前付きプロパティの名前空間を表しています。 MAPI プロトコル ハンドラー (PH) によってインデックスが作成され、読み取り専用として文書化されます。

注意

名前付きプロパティは、アイテムの作成や変更に使用しないでください。

const GUID PS_INTERNET_HEADERS  = {0x00020386, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PS_PUBLIC_STRINGS    = {0x00020329, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Address       = {0x00062004, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Appointment   = {0x00062002, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Common        = {0x00062008, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Log           = {0x0006200A, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 
const GUID PSETID_Meeting       = {0x6ED8DA90, 0x450B, 0x101B, {0x98, 0xDA, 0x00, 0xAA, 0x00, 0x3F, 0x13, 0x05}}; 
const GUID PSETID_Task          = {0x00062003, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}}; 

MNID_ID プロパティ

// In PSETID_Address
#define dispidWorkAddressStreet 0x8045
#define dispidWorkAddressCity 0x8046
#define dispidWorkAddressState 0x8047
#define dispidWorkAddressPostalCode 0x8048
#define dispidWorkAddressCountry 0x8049
#define dispidInstMsg 0x8062
#define dispidEmailDisplayName 0x8080
#define dispidEmailOriginalDisplayName 0x8084
// In PSETID_Appointment
#define dispidLocation 0x8208
#define dispidApptStartWhole 0x820D
#define dispidApptEndWhole 0x820E
#define dispidApptDuration 0x8213
#define dispidRecurring 0x8223
#define dispidAllAttendeesString 0x8238
#define dispidToAttendeesString 0x823B
#define dispidCCAttendeesString 0x823C
// In PSETID_Common
#define dispidReminderSet 0x8503
#define dispidSmartNoAttach 0x8514
#define dispidCommonStart 0x8516
#define dispidCommonEnd 0x8517
#define dispidRequest 0x8530
#define dispidCompanies 0x8539
#define dispidReminderNextTime 0x8560
// In PSETID_Log (also known as Journal)
#define dispidLogType 0x8700
#define dispidLogStart 0x8706
#define dispidLogDuration 0x8707
#define dispidLogEnd 0x8708MNID_STRING properties
// In PSETID_Task
#define dispidTaskStartDate 0x8104
#define dispidTaskDueDate 0x8105
#define dispidTaskActualEffort 0x8110
#define dispidTaskEstimatedEffort 0x8111
#define dispidTaskFRecur 0x8126

MNID_STRING プロパティ

// In PS_PUBLIC_STRINGS 
"Keywords"
// In PS_INTERNET_HEADERS
"return-path"

インターフェイス識別子

//{00375ac3-ecaf-4ef8-a527-34f452fa9c67}
DEFINE_GUID(IID_IFolderSupport, 0x00375ac3, 0xecaf, 0x4ef8, 0xa5, 0x27, 0x34, 0xf4, 0x52, 0xfa, 0x9c, 0x67);

//{29F3AB10-554d-11d0-a97c-00a0c911f50a}
#define DEFINE_PRXGUID(_name, _l) DEFINE_GUID(_name, (0x29f3ab10 + _l), 0x554d, 0x11d0, 0xa9, 0x7c, 0x00, 0xa0, 0xc9, 0x11, 0xf5, 0x0a) 
DEFINE_PRXGUID(IID_IProxyStoreObject, 0x00000000L);

DEFINE_OLEGUID Windows SDK ヘッダー ファイル guiddef.h で定義されているマクロを使用して、次の GUID シンボリック名をその値に関連付けます。

//{00020393-0000-0000-C000-000000000046}
DEFINE_OLEGUID(IID_IMSCapabilities, 0x00020393, 0, 0)

MAPI アドレス帳の変数

このセクションでは、MAPI アドレス帳の定数の定義について説明します。

定数 定義 説明
CONTAB_ROOT
((ULONG) 0x00000001)
MAPI アドレス帳のオブジェクトのルート フォルダーです。
CONTAB_SUBROOT
((ULONG) 0x00000002)
MAPI アドレス帳のオブジェクトのルート フォルダー内に含まれるサブフォルダーです。
CONTAB_CONTAINER
((ULONG) 0x00000003)
アドレス帳のコンテナー オブジェクトです。
CONTAB_USER
((ULONG) 0x00000004)
メッセージングを処理するユーザー オブジェクトです。
CONTAB_DISTLIST
((ULONG) 0x00000005)
配布リスト オブジェクトです。

その他の MAPI 定数

このセクションでは、MAPI API で使用する定数の定義 (エラー コードを含む) とインターフェイス識別子について説明します。以下に記載されているのは、今まで未公開で文書化されていなかったものです。

定数 定義 説明
DIALOG_MODAL
((ULONG) 0x00000001)
クライアントが IAddrBook::D etails メソッドを呼び出す場合、クライアントは ulFlags パラメーターに DIALOG_MODAL フラグを設定して、特定のアドレス帳エントリの詳細を示すモーダル ダイアログ ボックスを表示する必要があります。 この定数は mapidefs.h で定義されます。
ITEMPROC_FORCE
0x00000800
Outlook 2007 では、MAPI クライアントに新しいメッセージが通知される前に、ラップされた PST ストアによって、新しいメッセージに対するルールとスパムのフィルター処理が行われます。 IMAPIFolder::CreateMessage メソッドを使用して PST ストアに新しいメッセージを作成するプロバイダーまたはクライアントは、IMAPIProp::SaveChanges メソッドの ulFlags パラメーターにITEMPROC_FORCE フラグを設定して、ストアがリッスンしているクライアントに新しいメッセージの到着を通知する前に、メッセージがルール処理の対象であることを PST ストアに示す必要があります。 なお、このルールの処理は、Microsoft Exchange Server 以外のサーバーで作成された新しいメッセージにのみ適用されます。Exchange Server は、そのサーバー上のメッセージ用のルールを処理するからです。 したがって、メッセージを作成するプロバイダーまたはクライアントは、サーバーが Exchange サーバーではないことを示す NON_EMS_XP_SAVE と組み合わせてこのフラグを渡す必要があります。
MAPI_BG_SESSION
0x00200000
クライアントは MAPILogonEx 関数を呼び出し、flFlags パラメーターの MAPI_BG_SESSION フラグを設定してセッションにログオンし、バックグラウンドで任意の操作を実行できます。 通常、クライアントがバックグラウンド スレッドまたは別のプロセスでフォアグラウンド スレッドの妨げにならないように処理を行う場合は、MAPI_BG_SESSION フラグを使用して MAPILogonEx を呼び出す必要があります。 この例は、バックグラウンド型アクセスで個人用フォルダー ファイル (PST) を開くインデックス作成エンジンなどのクライアント アプリケーションで使用します。
MAPI_CACHE_ONLY
0x00004000
クライアントは IAddrBook::OpenEntry メソッドを呼び出し、ulFlags パラメーターで MAPI_CACHE_ONLY フラグを設定してアドレス帳エントリを開き、その後キャッシュからのみアクセスできます。 この例は、Exchange キャッシュ モードでグローバル アドレス一覧を開き、クライアントとサーバー間のトラフィックを作成せずにキャッシュからそのアドレス帳のエントリにアクセスする、クライアント アプリケーションで使用します。
MAPI_DIALOG_MODELESS
0x0000000C
この値は 、ulFlags パラメーターの Simple MAPI MAPISendMail 関数に渡して、既定のメール アプリケーションでモードレス ダイアログ ボックスが表示されるように指定できます。 このフラグも MAPI_DIALOG (0x00000008) も設定されていないと、ダイアログ ボックスは表示されません。
MAPI_NO_CACHE
0x00000200
Microsoft Office Outlook が Exchange キャッシュ モードにあり、ストアがキャッシュ モードで開かれている場合、クライアントまたはサービス プロバイダーは IMsgStore::OpenEntry を呼び出し、ulFlags パラメーターの MAPI_NO_CACHE フラグを設定してリモート ストア上のアイテムまたはフォルダーを開くことができます。 リモート サーバー上の MDB_ONLINE フラグを使用してメッセージ ストアを開く場合は、MAPI_NO_CACHE フラグを使用する必要はありません。
MAPI_UNICODE
0x80000000
クライアントまたはサービス プロバイダーは OpenIMsgOnIStg 関数を呼び出し、ulFlags パラメーターに MAPI_UNICODE フラグを設定して Unicode .msg ファイルを作成できます。 結果として IMessage : IMAPIProp ファイルが作成され、このファイルは PidTagStoreSupportMask 正規プロパティSTORE_UNICODE_OK を表示し、Unicode のプロパティをサポートします。 この定数は mapidefs.h で定義されます。
MDB_ONLINE
0x00000100
Outlook が Exchange キャッシュ モードの場合、クライアントまたはサービス プロバイダーは IMAPISession::OpenMsgStore メソッドを呼び出し、ulFlags パラメーターで MDB_ONLINE フラグを設定してローカル メッセージ ストアへの接続をオーバーライドし、リモート サーバー上のストアを開くことができます。 なお、同じ MAPI セッションにおいて、同時にキャッシュ モードと非キャッシュ モードで Exchange ストアを開くことはできません。 キャッシュ済みのメッセージ ストアを既に開いている場合は、このフラグを使用してストアを開く前にストアを閉じるか、このフラグを使用してリモート サーバー上の Exchange ストアを開くことができる新しい MAPI セッションを開く必要があります。
NON_EMS_XP_SAVE
0x00001000
クライアントは IMAPIProp::SaveChanges メソッドを呼び出し、ulFlags パラメーターにNON_EMS_XP_SAVE フラグを設定して、メッセージが Exchange サーバーから配信されていないことを示すことができます。 このフラグは、ulFlags パラメーターの ITEMPROC_FORCE フラグと組み合わせて使用して、PST ストアがリッスンしているクライアントにメッセージの到着を通知する前に、メッセージがルール処理の対象であることを PST ストアに示す必要があります。 このルールの処理は、Exchange サーバーではないサーバー上の IMAPIFolder::CreateMessage で作成された新しいメッセージにのみ適用されます (Exchange サーバーでは、既にメッセージに対してルールが処理されています)。
SPAMFILTER_ONSAVE
0x00000080
クライアントは IMAPIProp::SaveChanges を呼び出し、ulFlags パラメーターで SPAMFILTER_ONSAVE フラグを設定して、保存されているメッセージに対してスパム フィルター処理を有効にすることができます。 スパムのフィルター処理に関するサポートは、送信者の電子メール アドレスの種類が簡易メール転送プロトコル (SMTP) であり、メッセージが個人用フォルダー ファイル (PST) 向けのストアに保存されている場合にのみ使用することができます。
STORE_ITEMPROC
0x00200000
ラップされた PST ストアの PidTagStoreSupportMask 正規プロパティにこのフラグが設定されている場合、ストアに新しいメッセージが到着したときに、ストアによるルールの処理とスパムのフィルター処理がメッセージごとに別々に行われることを示します。 それから、ストアは IMAPISupport::Notify を呼び出し、パラメーターとして渡された NOTIFICATION 構造に fnevNewMail を設定し、リッスンしているクライアントに新しいメッセージの詳細を渡します。 その後、リッスンしているクライアントが通知を受信すれば、メッセージに対するルールの処理は行われなくなります。
STORE_UNICODE_OK
0x00040000
このフラグが PidTagStoreSupportMask 正規プロパティに含まれている場合、ストアが Unicode の記憶域をサポートしていることを示します。 クライアントは、フラグの有無を調べて、Unicode の情報を要求するかストアに保存するかを決定できます。

フォルダー内のアイテムをアーカイブするための定義

次の定数の定義は、PidTagAgingGranularity 正規プロパティの設定に使用する値です。

#define AG_MONTHS 0 
#define AG_WEEKS  1 
#define AG_DAYS   2 

リモート オブジェクトを表示するための定義

次の定数およびマクロの定義は、リモート オブジェクトを表示するためのものです。 詳細については、PidTagDisplayTypeEx 正規プロパティ をご覧ください。

#define DTE_FLAG_REMOTE_VALID0x80000000 
#define DTE_FLAG_ACL_CAPABLE    0x40000000 
#define DTE_MASK_REMOTE        0x0000ff00 
#define DTE_MASK_LOCAL        0x000000ff 
  
#define DTE_IS_REMOTE_VALID(v)(!!((v) & DTE_FLAG_REMOTE_VALID)) 
#define DTE_IS_ACL_CAPABLE(v)(!!((v) & DTE_FLAG_ACL_CAPABLE)) 
#define DTE_REMOTE(v)(((v) & DTE_MASK_REMOTE) >> 8) 
#define DTE_LOCAL(v)((v) & DTE_MASK_LOCAL) 
  
#define DT_ROOM((ULONG) 0x00000007) 
#define DT_EQUIPMENT((ULONG) 0x00000008) 
#define DT_SEC_DISTLIST((ULONG) 0x00000009)

Exchange のアドレス帳およびメッセージ ストアのエラー コードの定義

以下は、再接続機能を持つ Exchange アドレス帳とメッセージ ストアのエラーコードの定義について説明したものです。 最後の呼び出しが切断されたグローバル カタログ (GC) への呼び出しの場合、再試行が必要となる MAPI_E_END_OF_SESSION エラーが発生する可能性があります。

Outlook の MAPI では、特別な再構成を行わずに GC サーバーに再接続することができますが、その他のエラー コードもクライアントに返されることがあります。

定数 定義 説明
MAPI_E_END_OF_SESSION
0x80040200
接続が切断されたときに返されます。
MAPI_E_RECONNECTED
0x80040125
リモート プロシージャ コール (RPC) 接続トークンが古くなっている場合に返されます。 現在のトランザクションのトークンが再接続されたことを意味する接続のトークンと異なる場合は、 MAPI_E_RECONNECTEDが返され、MAPI_E_END_OF_SESSIONと同じように扱うことができます。 呼び出しは再試行する必要があります。
MAPI_E_OFFLINE
0x80040126
接続がオフラインのときに返されます。 通常、サーバーの障害やネットワーク接続の切断など、環境内に何かが発生したことを意味します。 このエラーは、キャッシュ モードのプロファイルを使用して、サーバーと通信するためにキャッシュをバイパスしようとしたときに最も発生しやすくなります。 キャッシュによって最初にサーバーとの接続を確立できなかった場合は、オフライン状態になっている可能性があります。その場合、MAPI_E_OFFLINE が現れます。

上記に該当する可能性のあるすべてのシナリオの場合、上記 2 つのエラーはいずれも返されません。 ほとんどの場合、 MAPI_E_NETWORK_ERROR または MAPI_E_CALL_FAILED が返されます。 Microsoft Exchange Server MAPI クライアントと Collaboration Data Objects 1.2.1 のダウンロードを使用すれば、いずれも表示されなくなります。

Exchange Server メールボックスのキャッシュ モードのクォータに関する定義

次の定数の定義は、Microsoft Outlook 2010 および Microsoft Outlook 2013 で使用します。Microsoft Outlook 2010 および Microsoft Outlook 2013 以外の場合にオンライン プロファイルでのみ使用できる Exchange メールボックス クォータと同等の、Exchange のキャッシュ モードにおけるプロファイルのクォータを設定します。

#define PR_QUOTA_WARNING PROP_TAG( PT_LONG, 0x341A)
#define PR_QUOTA_SEND    PROP_TAG( PT_LONG, 0x341B)
#define PR_QUOTA_RECEIVE PROP_TAG( PT_LONG, 0x341C)

これらのプロパティは、対応するオンライン プロパティにマップされ、キロバイト単位の同じ値が含まれます。 PR_QUOTA_WARNING は PR_STORAGE_QUOTA_LIMIT に、PR_QUOTA_SEND は PR_QUOTA_PROHIBIT_SEND_QUOTA に、PR_QUOTA_RECEIVE は PR_PROHIBIT_RECEIVE_QUOTA にそれぞれマップされます。

メッセージ形式の定義

次の定数の定義は、PidTagMessageEditorFormat 正規プロパティの設定に使用する値です。

#define EDITOR_FORMAT_DONTKNOW  ((ULONG) 0) 
#define EDITOR_FORMAT_PLAINTEXT ((ULONG) 1) 
#define EDITOR_FORMAT_HTML      ((ULONG) 2) 
#define EDITOR_FORMAT_RTF       ((ULONG) 3)

RPC over HTTP の使用の定義

プロパティを設定するフラグとして使用する定数の定義については、「PidTagRpcOverHttpFlags 正規プロパティ」のトピックを参照してください。

プロパティの設定に使用する定数の定義については、「PidTagRpcOverHttpProxyAuthScheme 正規プロパティ」のトピックを参照してください。

識別子

DEFINE_OLEGUID Microsoft Windows ソフトウェア開発キット (Windows SDK) (SDK) ヘッダー ファイル guiddef.h で定義されているマクロを使用して、次の GUID シンボリック名をそれらの値に関連付けます。

//{0002038A-0000-0000-C000-000000000046}
#if !defined(INITGUID) || defined(USES_IID_IMessageRaw) 
DEFINE_OLEGUID(IID_IMessageRaw,0x0002038A, 0, 0); 
#endif

次の識別子は、アドレス帳の Capone Profile セクション用で、複数の Exchange (MultiEx) メールボックスのサポートに使用され、PR_AB_CHOOSE_DIRECTORY_AUTOMATICALLY プロパティが含まれます。このプロパティは SetDefaultDir によって指定された既定のコンテナーを事実上無効にします。

// {00020D0A-0000-0000-C000-000000000046}
DEFINE_OLEGUID(IID_CAPONE_PROF, 0x00020d0a, 0, 0);

インターフェイス識別子

IMAPISync

DEFINE_GUID(IID_IMAPISync, 0x5024a385, 0x2d44, 0x486a,  0x81, 0xa8, 0x8f, 0xe, 0xcb, 0x60, 0x71, 0xdd);

IMAPISyncProgressCallback

DEFINE_GUID(IID_IMAPISyncProgressCallback, 0x5024a386, 0x2d44, 0x486a,  0x81, 0xa8, 0x8f, 0xe, 0xcb, 0x60, 0x71, 0xdd);

IID_IContabAdmin

// {CC6A3BA9-E7F5-4769-887B-34E190817BFC}
DEFINE_GUID(IID_IContabAdmin, 0xcc6a3ba9, 0xe7f5, 0x4769, 0x88, 0x7b, 0x34, 0xe1, 0x90, 0x81, 0x7b, 0xfc);

IID_IMAPISECUREMESSAGE

DEFINE_GUID(IID_IMAPISecureMessage, 0x253cc320, 0xeab6, 0x11d0, 0x82, 0x22, 0, 0x60, 0x97, 0x93, 0x87, 0xea);

IID_IMAPIGetSession

DEFINE_GUID(IID_IMAPIGetSession, 0x614ab435, 0x491d, 0x4f5b, 0xa8, 0xb4, 0x60, 0xeb, 0x3, 0x10, 0x30, 0xc6);

PST 上書きハンドラーのインターフェイス識別子

IID_IPSTOVERRIDEREQ

// {892EBC6D-24DC-4d90-BA48-C6CBEC14A86A}
DEFINE_GUID(IID_IPSTOVERRIDEREQ, 0x892ebc6d, 0x24dc, 0x4d90, 0xba, 0x48, 0xc6, 0xcb, 0xec, 0x14, 0xa8, 0x6a);

IID_IPSTOVERRIDE1

// {FBB68D34-F561-44fb-A8CA-AE36696342CA}
DEFINE_GUID(IID_IPSTOVERRIDE1, 0xfbb68d34, 0xf561, 0x44fb, 0xa8, 0xca, 0xae, 0x36, 0x69, 0x63, 0x42, 0xca);

関連項目