次の方法で共有


MAPI メッセージ クラス

適用対象: Outlook 2013 | Outlook 2016

すべてのメッセージには、メッセージの種類、目的、またはコンテンツを識別するメッセージ クラス プロパティ PR_MESSAGE_CLASS (PidTagMessageClass) があります。 PR_MESSAGE_CLASS は、すべての新しいメッセージで必要なプロパティです。 メッセージのクラスは、ユーザーにメッセージを表示するために使用されるフォームと、受信メッセージを配置するためのフォルダーを決定します。

メッセージ クラスは、ASCII 文字 32 から 127 を含み、ピリオドで区切られた大文字と小文字を区別する文字列ですが、ピリオドで終わることはできません。 各文字列はサブクラス化のレベルを表し、許可されるレベルの数に制限はありません。

たとえば、クライアント アプリケーションが送受信するほとんどのメッセージは 、IPM メッセージ クラスに分類されます。これは、すべての対人メッセージ (つまり、コンピューターによってプログラムによってではなく、人間のユーザーが読み取ることを意図したメッセージ) を記述する広範なカテゴリです。 メッセージ ストア プロバイダーは、IPM サブクラスを作成することで、 IPM メッセージをより正確に記述します。 IPM サブクラスは、IPM メッセージ クラスのプロパティを継承します。 IPM クラスのサブクラスは、 IPM などの IPM 識別子に他の文字列を連結することによって名前が付 けられます。メモ メッセージと IPM について説明します 。連絡先 メッセージを説明する連絡先。

IPM メッセージの表示と管理を処理するために、クライアントは MAPI が提供する標準フォームを使用できます。 新しいメッセージ クラスの表示と管理を処理するには、クライアント アプリケーション開発者には次の 2 つのオプションがあります。

  1. 標準クライアントで使用できる MAPI 定義フォーム インターフェイスのセットを使用して、新しいフォームを作成できます。

  2. 完全なスタンドアロン アプリケーションを実装することで、独自のクライアントを作成できます。

クライアントは、すべての送信メッセージの PR_MESSAGE_CLASS プロパティを IPM または IPC のいずれかのサブクラスに設定する必要がありますが、メッセージ ストア プロバイダーはそれを設定する最終的な責任があります。 そのため、クライアントがメッセージ クラスを設定せずにメッセージを送信する場合、メッセージ ストア プロバイダーは、適切な種類のクライアントに適切な既定値に設定します。 対人メッセージング クライアントの既定のメッセージ クラスは IPM です。プロセス間通信クライアントの既定のメッセージ クラスは IPC です

メッセージ クラスの長さの制限は 255 文字です。 ただし、レポートで使用されるメッセージ クラスをサポートするには、メッセージ クラスが 127 文字を超えないようにしてください。 レポート メッセージ クラスは、元のメッセージのクラスに基づいており、プレフィックスとサフィックスの 2 つの追加が追加されています。 プレフィックス REPORT は、メッセージがレポートであることを示し、サフィックスはレポートの種類 (DR (配信レポート)、NDR (配信不能レポート)、IPNRN (読み取りレポート)、または IPNNRN (非読み取りレポート) を示します。 これらの長さの制限は文字で指定されることに注意してください。2 バイト文字セットを使用するプラットフォームでは、実際のバイト数が多くなる可能性があります。

メッセージ ストア プロバイダーは、クライアントがメッセージ クラスの許容される制限を超える文字列を割り当てようとしたときに、 IMAPIProp::SetProps メソッドの実装からMAPI_E_INVALID_PARAMETERを返す必要があります。

関連項目

MAPI メッセージ