MapiFileDesc 構造体には、一時ファイルとして格納されているメッセージ添付ファイルを含むファイルに関する情報が含まれています。 このファイルには、静的 OLE オブジェクト、埋め込み OLE オブジェクト、埋め込みメッセージ、およびその他の種類のファイルを含めることができます。 Unicode サポートの場合は、 MapiFileDescW 構造体を 使用します。
構文
typedef struct {
ULONG ulReserved;
ULONG flFlags;
ULONG nPosition;
LPSTR lpszPathName;
LPSTR lpszFileName;
LPVOID lpFileType;
} MapiFileDesc, *lpMapiFileDesc;
メンバー
ulReserved
予約;は 0 である必要があります。
flFlags
オプション フラグのビットマスク。 次のフラグを設定できます。
| 値 | 意味 |
|---|---|
|
添付ファイルは OLE オブジェクトです。 MAPI_OLE_STATICも設定されている場合、添付ファイルは静的 OLE オブジェクトです。 MAPI_OLE_STATICが設定されていない場合、添付ファイルは埋め込み OLE オブジェクトです。 |
|
添付ファイルは静的 OLE オブジェクトです。 |
どちらのフラグも設定されていない場合、添付ファイルはデータ ファイルとして扱われます。
nPosition
添付ファイルをレンダリングするメッセージ テキスト内の場所を示すために使用される整数。 添付ファイルは、メッセージ テキスト内の特定の位置にある文字を置き換えます。 つまり、添付ファイルは 、MapiMessage 構造体フィールド NoteText[nPosition]の文字を置き換えます。 値 -1 (0xFFFFFFFF) は、添付ファイルの位置が示されていないことを意味します。クライアント アプリケーションは、ユーザーが添付ファイルにアクセスするための方法を提供する必要があります。
lpszPathName
添付ファイルの完全修飾パスへのポインター。 このパスには、ディスク ドライブ文字とディレクトリ名を含める必要があります。
lpszFileName
受信者に表示される添付ファイル名へのポインター。一時ファイルが使用されている場合、 lpszPathName メンバーのファイル名と異なる場合があります。 lpszFileName メンバーが空または NULL の場合は、lpszPathName のファイル名が使用されます。
lpFileType
添付ファイルの種類へのポインター。 MapiFileTagExt 構造体で表すことができます。 NULL の値は、不明なファイルの種類またはオペレーティング システムによって決定されるファイルの種類を示します。
注釈
シンプル MAPI は、次の 3 種類の埋め込み添付ファイルで動作します。
- データ ファイルの添付ファイル
- 編集可能な OLE オブジェクトの添付ファイル
- 静的 OLE オブジェクトの添付ファイル
OLE オブジェクト ファイルは、OLE オブジェクト ストリームのファイル表現です。 クライアント アプリケーションは、ファイルの内容を読み取る OLESTREAM オブジェクトを使用して OLE 関数 OleLoadFromStream を呼び出すことによって、ファイルから OLE オブジェクトを再作成できます。 OLE ファイルの添付ファイルが送信メッセージに含まれている場合は、OLE オブジェクト ストリームを添付ファイルとして使用するファイルに直接書き込む必要があります。
MapiFileDesc メンバー nPosition を使用する場合、クライアント アプリケーションは 2 つの添付ファイルを同じ場所に配置しないでください。 クライアント アプリケーションでは、メッセージ テキストの末尾を超える位置に添付ファイルが表示されない場合があります。
要件
| 要件 | 値 |
|---|---|
| Header | mapi.h |