添付ファイル テーブル
適用対象: Outlook 2013 | Outlook 2016
添付ファイル テーブルには、送信されたメッセージまたは構成中のメッセージに関連付けられているすべての添付ファイル オブジェクトに関する情報が含まれています。
メッセージの IMAPIProp::SaveChanges メソッドの呼び出しによって保存された添付ファイルのみがテーブルに含まれます。 添付ファイル テーブルはメッセージ ストア プロバイダーによって実装され、クライアント アプリケーションとトランスポート プロバイダーによって使用されます。
添付ファイル テーブルにアクセスするには、次のいずれかを呼び出します。
IMAPIProp::OpenProperty。 PR_MESSAGE_ATTACHMENTS (PidTagMessageAttachments) プロパティを要求します。
添付ファイル テーブルは動的です。
メッセージ ストア プロバイダーは、添付ファイル テーブルでの並べ替えをサポートする必要はありません。 並べ替えがサポートされていない場合は、PR_RENDERING_POSITION (PidTagRenderingPosition) プロパティという位置をレンダリングして、テーブルを順番に表示する必要があります。
メッセージ ストア プロバイダーは、添付ファイル テーブルの制限をサポートするためにも必要ありません。 制限をサポートしていないプロバイダーは、IMAPITable::Restrict および IMAPITable::FindRow の実装からMAPI_E_NO_SUPPORTを返します。
添付ファイル テーブルは小さい場合があります。必要な列セットには、次の 4 つの列しかありません。
PR_ATTACH_NUM (PidTagAttachNumber)
PR_INSTANCE_KEY (PidTagInstanceKey)
PR_RECORD_KEY (PidTagRecordKey)
PR_RENDERING_POSITION
PR_ATTACH_NUM は転送不可であり、メッセージ内の添付ファイルを一意に識別するための値が含まれています。 このプロパティは、多くの場合、テーブルの行のインデックスとして使用されます。 PR_ATTACH_NUM は短い寿命を持っています。これは、添付ファイルを含むメッセージが開いている間にのみ有効です。 添付ファイル テーブルが開いている限り、その値は一定のままになります。
PR_INSTANCE_KEY は、ほぼすべてのテーブルで必要です。 特定の行を一意に識別するために使用されます。
PR_RECORD_KEY は、比較のためにオブジェクトを一意に識別するために一般的に使用されます。 PR_ATTACH_NUMとは異なり、PR_RECORD_KEYには長期的なエントリ識別子と同じスコープがあります。メッセージが閉じられ、再度開いた後でも、使用可能で有効なままになります。 MAPI でのレコード キーの使用の詳細については、「 MAPI レコードキーと検索キー」を参照してください。
PR_RENDERING_POSITION は、リッチ テキスト メッセージに添付ファイルを表示する方法を示します。 PR_BODY (PidTagBody) プロパティに格納されているメッセージ コンテンツの最初の文字をオフセット 0 に設定するか、-1 (0xFFFFFFFF) に設定して、添付ファイルをメッセージ テキスト内でまったくレンダリングしないことを示す、文字単位のオフセットに設定できます。 PR_RENDERING_POSITIONを設定しないのもオプションです。
添付ファイル テーブルがレンダリング位置で並べ替えられると、メッセージ ストア プロバイダーはそれを符号付き値 (PT_LONG) として扱います。 したがって、-1 のレンダリング位置を持つ添付ファイルは、有効なオフセットを反映するレンダリング位置を持つ添付ファイルの前に並べ替えられます。
プレーン テキスト メッセージでの添付ファイルのレンダリングの詳細については、「プレーン テキスト での添付ファイルのレンダリング」を参照してください。
リッチ テキスト形式 (RTF) などの書式設定されたテキストで添付ファイルをレンダリングする方法については、「 RTF テキストでの添付ファイルのレンダリング」を参照してください。
メッセージ ストア プロバイダーには、一般的に、計算や取得が簡単であるため、添付ファイル テーブルに含まれるプロパティの一部は次のとおりです。
プロパティ | ... |
---|---|
PR_ATTACH_ENCODING (PidTagAttachEncoding) |
PR_ATTACH_EXTENSION (PidTagAttachExtension) |
PR_ATTACH_FILENAME (PidTagAttachFilename) |
PR_ATTACH_LONG_FILENAME (PidTagAttachLongFilename) |
PR_ATTACH_PATHNAME (PidTagAttachPathname) |
PR_ATTACH_LONG_PATHNAME (PidTagAttachLongPathname) |
PR_ATTACH_METHOD (PidTagAttachMethod) |
PR_ATTACH_TAG (PidTagAttachTag) |
PR_CREATION_TIME (PidTagCreationTime) |
PR_ATTACH_TRANSPORT_NAME (PidTagAttachTransportName) |
PR_DISPLAY_NAME (PidTagDisplayName) |
PR_LAST_MODIFICATION_TIME (PidTagLastModificationTime) |