MAPI 標準プロパティMAPI Canonical Properties

適用対象: Outlook 2013 | Outlook 2016Applies to: Outlook 2013 | Outlook 2016

標準プロパティは、MAPI プロパティ、または同じプロパティ識別子で定義された複数の MAPI プロパティを表す仮想プロパティです。A canonical property is a virtual property that represents a MAPI property, or multiple MAPI properties defined with the same property identifier. 標準プロパティは、コード外のディスカッションやドキュメントでの MAPI プロパティの一貫した識別を容易にすることを目的としています。Canonical properties are only intended to facilitate consistent identification of MAPI properties in discussions or documentation outside of code. MAPI で定義されたタグ付きプロパティ名とは異なり、標準プロパティ名は MAPI ヘッダーファイルでグローバル定数として定義されません。Unlike MAPI-defined tagged property names, canonical property names are not defined as global constants in MAPI header files.

名前付け規則Naming Conventions

標準プロパティ名は、"Pid" というプレフィックスで始まります。これは "プロパティ識別子" を表します。Canonical property names begin with a prefix, "Pid", which represents "property identifier." プロパティがタグ付きプロパティであるか、数値識別子を持つ名前付きプロパティであるか、または文字列名を持つ名前付きプロパティであるかに応じて、プレフィックスはそれぞれ "PidTag"、"PidLid"、および "PidName" として修飾されます。Depending on whether the property is a tagged property, a named property with a numerical identifier, or a named property with a string name, the prefix is further qualified as "PidTag," "PidLid," and "PidName" respectively. たとえば、 PidTagAccountは、受信者のPR_ACCOUNT (PidTagAccount)、 PR_ACCOUNT_A (PidTagAccount)、 PR_ACCOUNT_W (PidTagAccount) を表します。アカウント名。PidLidContactsは、 dispidcontactsプロパティを表します。これは、メッセージに関連付けられている連絡先の名前を表す数値識別子を持つ名前付きプロパティです。とPidNamePhishingStampは、http://schemas.microsoft.com/outlook/phishingstamp文字列名を持つ名前付きプロパティを表し、フィッシングである可能性が高いメッセージをマークする文字列を指定します。For example, PidTagAccount represents the tagged properties, PR_ACCOUNT (PidTagAccount), PR_ACCOUNT_A (PidTagAccount), and PR_ACCOUNT_W (PidTagAccount), that specify a recipient's account name; PidLidContacts represents the dispidContacts property, a named property that has a numerical identifier and that specifies the name of contacts associated with a message; and PidNamePhishingStamp represents "http://schemas.microsoft.com/outlook/phishingstamp," a named property that has a string name, and that specifies the string marking messages that are likely to be phishing.

1つの標準プロパティを使用して類似のプロパティを表すRepresenting Similar Properties Using One Canonical Property

MAPI でのプロパティの識別Identifying Properties in MAPI

MAPI のすべてのプロパティは、署名されていない16ビット値であるプロパティ識別子によって識別されます。All properties in MAPI are identified by a property identifier that is an unsigned 16-bit value. プロパティの識別子とプロパティの型 (別の符号なしの16ビット値) は、プロパティのプロパティタグを構成します。The property identifier and the property type (another unsigned 16-bit value) constitute a property tag for the property.

MAPI では、プロパティタグを使用して、プロパティを一意に定義します。MAPI uses a property tag to uniquely define properties. PR_BUSINESS2_TELEPHONE_NUMBER (PidTagBusiness2TelephoneNumber) およびPR_OFFICE2_TELEPHONE_NUMBER (PidTagBusiness2TelephoneNumber) など、同じプロパティタグを持つプロパティは同一であると見なされます。MAPI のプロパティ。Properties that have the same property tag, like PR_BUSINESS2_TELEPHONE_NUMBER (PidTagBusiness2TelephoneNumber) and PR_OFFICE2_TELEPHONE_NUMBER (PidTagBusiness2TelephoneNumber), are considered identical properties in MAPI. MAPI が独自のプロパティに対して定義したプロパティタグの一覧については、「MAPI ヘッダーファイル Mapitags」を参照してください。For a list of property tags that MAPI has defined for its own properties, see the MAPI header file, Mapitags.h.

MAPI はプロパティ識別子を範囲に分割することに注意してください。Note that MAPI divides property identifiers into ranges. 範囲内の識別子は、その使用と所有権を示します。Where an identifier falls in the range indicates its use and ownership. タグ付きプロパティのプロパティ識別子は、0x0001 の範囲に含まれています。The property identifiers of tagged properties fall in the range of 0x0001 to 0x7FFF. この範囲内では、MAPI で定義されたプロパティのプロパティ識別子が0x0001 から0x3FFF の範囲に入ります。Within this range are the property identifiers of MAPI-defined properties, which fall in the range of 0x0001 to 0x3FFF. 名前付きプロパティのプロパティ識別子は、0x8000 から0x8FFF の範囲になります。The property identifiers of named properties fall in the range from 0x8000 to 0x8FFF.

名前付きプロパティは、さらにプロパティセットによって、または、符号なしの32ビット値である long ID (LID)、または文字列のいずれかによって属性されます。Named properties are additionally attributed by a property set, and either a long ID (LID), which is an unsigned 32-bit value, or a string. プロパティセットは、同じ目的を持つ名前付きプロパティのグループを識別する GUID です。A property set is a GUID that identifies a group of named properties with a similar purpose. プロパティセットと LID または文字列名は、名前付きプロパティを取得または設定するために使用されます。The property set and LID or string name are used to get or set the named property.

プロパティの種類Property Type

識別子とは別に、プロパティは、そのプロパティに使用できる値の型を指定するデータ型によって属性されます。Aside from identifiers, a property is attributed by a data type that specifies the type of values allowed for that property.

基になるプラットフォームでの Unicode のサポートに応じて、string 型のプロパティの場合、プロパティの型は PT_STRING8 (null で終了する8ビット文字列) または PT_UNICODE (null で終わる Unicode 文字列) です。For properties that are of the string type, depending on the support for Unicode in the underlying platform, the property can be of type PT_STRING8 (null-terminated 8-bit character string) or PT_UNICODE (null-terminated Unicode string). プロパティは PT_TSTRING 型で定義できます。コンパイル設定に応じて、Unicode をサポートするプラットフォーム用の Unicode 文字列、または ANSI または DBCS をサポートする PT_STRING8 文字列に対して、PT_TSTRING の既定値を指定できます。A property can be defined with the PT_TSTRING type, and depending on compilation settings, PT_TSTRING defaults to a Unicode string for platforms that support Unicode, or to a PT_STRING8 string for platforms that support ANSI or DBCS. 文字列型 (string) 型のプロパティは、 PR_ACCOUNTPR_ACCOUNT_APR_ACCOUNT_Wなどの3つの類似する名前で識別されます。これは、それぞれ PT_TSTRING、PT_STRING8、および PT_UNICODE の種類です。It is common that a string-typed property is identified by three similar names, such as PR_ACCOUNT, PR_ACCOUNT_A, and PR_ACCOUNT_W, which are of the type PT_TSTRING, PT_STRING8, and PT_UNICODE respectively.

種類に関連するプロパティの種類とマクロの詳細については、「MAPI ヘッダーファイル Mapidefs.h」を参照してください。For more information on property types and macros related to types, see the MAPI header file, Mapidefs.h.

類似したプロパティを識別するIdentifying Similar Properties

現在の MAPI プロパティの風景では、プロパティが異なるプロパティ名で公開されていて、すべてのプロパティが同じプロパティ識別子で定義されていることを検出するのは珍しいことではありません。In the current MAPI property landscape, it is not uncommon to find that a property has been exposed under different property names, all of which are defined with the same property identifier. たとえば、 PR_BUSINESS2_TELEPHONE_NUMBERPR_OFFICE2_TELEPHONE_NUMBERというタグ付きプロパティは、Mapitags プロパティの識別子と種類が同じになるように定義されています。For example, the tagged properties, PR_BUSINESS2_TELEPHONE_NUMBER and PR_OFFICE2_TELEPHONE_NUMBER, are defined in Mapitags.h to have the same property identifier and type. これらの2つのプロパティに密接に関連しています。Closely related to these two properties are:

  • PR_BUSINESS2_TELEPHONE_NUMBER_APR_BUSINESS2_TELEPHONE_NUMBER_A

  • PR_BUSINESS2_TELEPHONE_NUMBER_WPR_BUSINESS2_TELEPHONE_NUMBER_W

  • PR_OFFICE2_TELEPHONE_NUMBER_APR_OFFICE2_TELEPHONE_NUMBER_A

  • PR_OFFICE2_TELEPHONE_NUMBER_WPR_OFFICE2_TELEPHONE_NUMBER_W

"_ A" サフィックスが付いたプロパティは PT_STRING8 として入力され、"_ W" サフィックスを持つプロパティは PT_UNICODE として入力されます。The properties with the "_A" suffix are typed as PT_STRING8, and those with the "_W" suffix are typed as PT_UNICODE.

この例では、標準プロパティのPidTagBusiness2TelephoneNumberを使用して、このように密接に関連する mapi プロパティを1つの識別子を使用して参照し、一貫性のある方法 ("Pid" プレフィックスを使用) をすべての mapi で容易に参照することができます。プロパティ.The purpose of a canonical property, PidTagBusiness2TelephoneNumber in this example, is to facilitate referencing such closely affiliated MAPI properties using one identifier, and in a consistent way (using the "Pid" prefix) across all MAPI properties. 標準プロパティが表す実際の MAPI プロパティを検索する方法については、「標準プロパティ名から Mapi 名へのマッピング」を参照してください。To find which real MAPI properties a canonical property represents, see Mapping Canonical Property Names to MAPI Names. MAPI プロパティが関連付けられている標準プロパティを検索するには、「 Mapi 名から標準プロパティ名へのマッピング」を参照してください。To find the canonical property that a MAPI property is associated with, see Mapping MAPI Names to Canonical Property Names.

標準プロパティ名の MAPI サポートMAPI Support of Canonical Property Names

標準プロパティは実際のプロパティではなく、MAPI ヘッダーファイルで定義されていないため、コードで標準プロパティ名を使用しないでください。代わりに、コードで MAPI プロパティの正確な名前を使用する必要があります。Because canonical properties are not real properties and are not defined in MAPI header files, you should not use canonical property names in code; instead, you should continue to use the exact MAPI property names in code. たとえば、コードの外部でPR_BUSINESS2_TELEPHONE_NUMBERPR_OFFICE2_TELEPHONE_NUMBERPidTagBusiness2TelephoneNumberとして参照して、 PR_BUSINESS2_TELEPHONE_NUMBERまたは PR_OFFICE2_ を使用することができます。 **** コード内の TELEPHONE_NUMBER。For example, you can refer PR_BUSINESS2_TELEPHONE_NUMBER and PR_OFFICE2_TELEPHONE_NUMBER outside of code as PidTagBusiness2TelephoneNumber, and use either PR_BUSINESS2_TELEPHONE_NUMBER or PR_OFFICE2_TELEPHONE_NUMBER in code.

コードで正規のプロパティ名を使用する必要がある場合は、最初に独自のヘッダーファイルで定義する必要があります。If you must use canonical property names in your code, you must first define them in your own header files.

標準プロパティ名と Exchange プロトコル仕様Canonical Property Names and Exchange Protocol Specifications

正規名は、Exchange Server が他の Microsoft 製品と通信するために使用する Microsoft Exchange Server protocol の仕様で参照されています。Canonical names are referenced in Microsoft Exchange Server protocol specifications that are used by Exchange Server to communicate with other Microsoft products. Exchange プロトコル仕様によって参照されるメッセージオブジェクトプロパティの詳細については、「 [OXPROPS]」を参照してください。For more information about message object properties referenced by Exchange protocol specifications, see [MS-OXPROPS].

関連項目See also

MAPI プロパティタグMAPI Property Tags

MAPI プロパティ識別子の概要MAPI Property Identifier Overview

MAPI プロパティの種類の概要MAPI Property Type Overview