MapiFileDesc 構造体 (mapi.h)

MapiFileDesc 構造体には、一時ファイルとして格納されているメッセージ添付ファイルを含むファイルに関する情報が含まれています。 このファイルには、静的 OLE オブジェクト、埋め込み OLE オブジェクト、埋め込みメッセージ、およびその他の種類のファイルを含めることができます。 Unicode サポートの場合は、 MapiFileDescW 構造体を 使用します。

構文

typedef struct {
  ULONG  ulReserved;
  ULONG  flFlags;
  ULONG  nPosition;
  LPSTR  lpszPathName;
  LPSTR  lpszFileName;
  LPVOID lpFileType;
} MapiFileDesc, *lpMapiFileDesc;

メンバー

ulReserved

予約;は 0 である必要があります。

flFlags

オプション フラグのビットマスク。 次のフラグを設定できます。

意味
MAPI_OLE
添付ファイルは OLE オブジェクトです。 MAPI_OLE_STATICも設定されている場合、添付ファイルは静的 OLE オブジェクトです。 MAPI_OLE_STATICが設定されていない場合、添付ファイルは埋め込み OLE オブジェクトです。
MAPI_OLE_STATIC
添付ファイルは静的 OLE オブジェクトです。
 

どちらのフラグも設定されていない場合、添付ファイルはデータ ファイルとして扱われます。

nPosition

添付ファイルをレンダリングするメッセージ テキスト内の場所を示すために使用される整数。 添付ファイルは、メッセージ テキスト内の特定の位置にある文字を置き換えます。 つまり、添付ファイルは 、MapiMessage 構造体フィールド NoteText[nPosition]の文字を置き換えます。 値 -1 (0xFFFFFFFF) は、添付ファイルの位置が示されていないことを意味します。クライアント アプリケーションは、ユーザーが添付ファイルにアクセスするための方法を提供する必要があります。

lpszPathName

添付ファイルの完全修飾パスへのポインター。 このパスには、ディスク ドライブ文字とディレクトリ名を含める必要があります。

lpszFileName

受信者に表示される添付ファイル名へのポインター。一時ファイルが使用されている場合、 lpszPathName メンバーのファイル名と異なる場合があります。 lpszFileName メンバーが空または NULL の場合は、lpszPathName のファイル名が使用されます。

lpFileType

添付ファイルの種類へのポインター。 MapiFileTagExt 構造体で表すことができます。 NULL の値は、不明なファイルの種類またはオペレーティング システムによって決定されるファイルの種類を示します。

注釈

シンプル MAPI は、次の 3 種類の埋め込み添付ファイルで動作します。

  • データ ファイルの添付ファイル
  • 編集可能な OLE オブジェクトの添付ファイル
  • 静的 OLE オブジェクトの添付ファイル
データ ファイルの添付ファイルは、単にデータ ファイルです。 OLE オブジェクトの添付ファイルは、メッセージ テキストに表示される OLE オブジェクトです。 OLE 添付ファイルが編集可能な場合、受信者はそれをダブルクリックすると、そのソース アプリケーションが編集セッションの処理を開始します。 OLE 添付ファイルが静的な場合、オブジェクトを編集できません。 MapiFileDesc 構造体の flFlags メンバーに設定されたフラグによって、特定の添付ファイルの種類が決まります。 埋め込みメッセージは、 で識別できます。 lpszFileName メンバーの MSG 拡張機能。

OLE オブジェクト ファイルは、OLE オブジェクト ストリームのファイル表現です。 クライアント アプリケーションは、ファイルの内容を読み取る OLESTREAM オブジェクトを使用して OLE 関数 OleLoadFromStream を呼び出すことによって、ファイルから OLE オブジェクトを再作成できます。 OLE ファイルの添付ファイルが送信メッセージに含まれている場合は、OLE オブジェクト ストリームを添付ファイルとして使用するファイルに直接書き込む必要があります。

MapiFileDesc メンバー nPosition を使用する場合、クライアント アプリケーションは 2 つの添付ファイルを同じ場所に配置しないでください。 クライアント アプリケーションでは、メッセージ テキストの末尾を超える位置に添付ファイルが表示されない場合があります。

要件

要件
Header mapi.h

こちらもご覧ください

MapiFileDescW

MapiMessage

MapiMessageW