MapiFileDescW-Struktur (mapi.h)

Eine MapiFileDescW-Struktur enthält Informationen zu einer Datei, die eine Als temporäre Datei gespeicherte Nachrichtenanlage enthält. Diese Datei kann ein statisches OLE-Objekt, ein eingebettetes OLE-Objekt, eine eingebettete Nachricht und andere Dateitypen enthalten.

Syntax

typedef struct {
  ULONG ulReserved;
  ULONG flFlags;
  ULONG nPosition;
  PWSTR lpszPathName;
  PWSTR lpszFileName;
  PVOID lpFileType;
} MapiFileDescW, *lpMapiFileDescW;

Members

ulReserved

Typ: ULONG

Reserviert; muss 0 sein.

flFlags

Typ: ULONG

Bitmaske von Anlagenflags. Die folgenden Flags können festgelegt werden.

Wert Bedeutung
MAPI_OLE
0x00000001
Die Anlage ist ein OLE-Objekt. Wenn auch MAPI_OLE_STATIC festgelegt ist, handelt es sich bei der Anlage um ein statisches OLE-Objekt. Wenn MAPI_OLE_STATIC nicht festgelegt ist, handelt es sich bei der Anlage um ein eingebettetes OLE-Objekt.
MAPI_OLE_STATIC
0x00000002
Die Anlage ist ein statisches OLE-Objekt.
 

Wenn keines der Flags festgelegt ist, wird die Anlage als Datendatei behandelt.

nPosition

Typ: ULONG

Eine ganze Zahl, mit der angegeben wird, wo die Anlage im Nachrichtentext gerendert wird. Der Nachrichtentext wird im NoteText-Member der MapiMessageW-Struktur gespeichert, und die ganze Zahl wird als Index verwendet, um ein bestimmtes Zeichen in der Nachrichtenzeichenfolge NoteText[nPosition] zu identifizieren, das durch die Anlage ersetzt wird.

Der Wert -1 (0xFFFFFFFF) bedeutet, dass die Anlageposition nicht angegeben ist und die Clientanwendung dem Benutzer eine Möglichkeit zum Zugriff auf die Anlage bieten muss.

lpszPathName

Typ: PWSTR

Zeiger auf den vollqualifizierten Pfad der angefügten Datei. Dieser Pfad sollte den Laufwerkbuchstaben und den Verzeichnisnamen enthalten.

lpszFileName

Typ: PWSTR

Zeiger auf den Dateinamen der Anlage, wie er vom Empfänger gesehen wird. Der Dateiname, der vom Empfänger angezeigt wird, kann sich vom Dateinamen im lpszPathName-Element unterscheiden, wenn temporäre Dateien verwendet werden.

Wenn der lpszFileName-Member leer oder NULL ist, wird der Dateiname von lpszPathName verwendet.

lpFileType

Typ: PVOID

Zeiger auf den Anlagendateityp, der mit einer MapiFileTagExt-Struktur dargestellt werden kann.

Der Wert NULL gibt einen unbekannten Dateityp oder einen vom Betriebssystem festgelegten Dateityp an.

Hinweise

Einfache MAPI funktioniert mit drei Arten von eingebetteten Anlagen:

  • Anlagen von Datendateien
  • Bearbeitbare OLE-Objektdateianlagen
  • Anlagen statischer OLE-Objektdateien
Datendateianlagen sind einfach Datendateien. Anlagen von OLE-Objektdateien sind OLE-Objekte, die im Nachrichtentext angezeigt werden. Wenn die OLE-Anlage bearbeitbar ist, kann der Empfänger darauf doppelklicken, und seine Quellanwendung wird gestartet, um die Bearbeitungssitzung zu verarbeiten. Wenn die OLE-Anlage statisch ist, kann das Objekt nicht bearbeitet werden. Das im flFlags-Member der MapiFileDescW-Struktur festgelegte Flag bestimmt die Art einer bestimmten Anlage. Eingebettete Nachrichten können durch eine identifiziert werden. MSG-Erweiterung im lpszFileName-Element .

OLE-Objektdateien sind Dateidarstellungen von OLE-Objektstreams. Die Clientanwendung kann ein OLE-Objekt aus der Datei neu erstellen, indem sie die OLE-Funktion OleLoadFromStream mit einem OLESTREAM-Objekt aufruft, das den Dateiinhalt liest. Wenn eine OLE-Dateianlage in einer ausgehenden Nachricht enthalten ist, sollte der OLE-Objektdatenstrom direkt in die Datei geschrieben werden, die als Anlage verwendet wird.

Bei Verwendung des MapiFileDescW-MembersnPosition sollte die Clientanwendung nicht zwei Anlagen am selben Speicherort platzieren. Clientanwendungen zeigen möglicherweise keine Dateianlagen an Positionen an, die über das Ende des Nachrichtentexts hinausgehen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Kopfzeile mapi.h

Weitere Informationen

MAPISendMailW

MapiFileDesc

MapiMessageW