Freigeben über


OBJECTDESCRIPTOR-Struktur (oleidl.h)

Stellt die Datenstruktur dar, die für die Dateiformate CF_OBJECTDESRIPTOR und CF_LINKSRCDESCRIPTOR verwendet wird. Diese Formate bieten Benutzeroberflächeninformationen während Datenübertragungsvorgängen, z. B. das Dialogfeld Spezial einfügen oder Zielfeedbackinformationen bei Drag-and-Drop-Vorgängen.

Syntax

typedef struct tagOBJECTDESCRIPTOR {
  ULONG  cbSize;
  CLSID  clsid;
  DWORD  dwDrawAspect;
  SIZEL  sizel;
  POINTL pointl;
  DWORD  dwStatus;
  DWORD  dwFullUserTypeName;
  DWORD  dwSrcOfCopy;
} OBJECTDESCRIPTOR, *POBJECTDESCRIPTOR, *LPOBJECTDESCRIPTOR, LINKSRCDESCRIPTOR, *PLINKSRCDESCRIPTOR, *LPLINKSRCDESCRIPTOR;

Member

cbSize

Die Größe der Struktur in Bytes.

clsid

Die CLSID des zu übertragenden Objekts. Die clsid wird verwendet, um das Symbol für die Option Anzeige als Symbol im Dialogfeld Spezial einfügen abzurufen, und gilt nur, wenn das Format Quelle einbetten oder Eingebettetes Objekt angeboten wird. Wenn beides nicht angeboten wird, sollte der Wert von clsid CLSID_NULL werden. Die clsid kann von der Quelle abgerufen werden, indem das Objekt geladen und die IOleObject::GetUserClassID-Methode aufgerufen wird. Beachten Sie, dass dieser Wert für Linkobjekte nicht mit dem von der IPersist::GetClassID-Methode zurückgegebenen Wert identisch ist.

dwDrawAspect

Der Anzeigeaspekt des Objekts. In der Regel ist dieser Wert DVASPECT_CONTENT oder DVASPECT_ICON. Wenn die Quellanwendung das Objekt ursprünglich nicht gezeichnet hat, enthält das DwDrawAspect-Feld einen Nullwert (der nicht mit DVASPECT_CONTENT identisch ist). Weitere Informationen finden Sie unter DVASPECT.

sizel

Die tatsächliche Ausdehnung des Objekts (ohne Zuschneiden oder Skalierung) in HIMETRIC-Einheiten . Das Festlegen dieses Felds ist optional. Der Wert kann (0,0) für Anwendungen sein, die das zu übertragende Objekt nicht zeichnen. Dieses Feld wird hauptsächlich von Zielen von Drag-and-Drop-Vorgängen verwendet, sodass sie dem Benutzer entsprechendes Feedback geben können.

pointl

Der Offset in HIMETRIC-Einheiten aus der oberen linken Ecke des Objekts, in dem ein Drag-and-Drop-Vorgang initiiert wurde. Dieses Feld ist nur für einen Drag-and-Drop-Übertragungsvorgang sinnvoll, da es dem Punkt entspricht, an dem die Maus geklickt wurde, um den Drag-and-Drop-Vorgang zu initiieren. Der Wert ist (0,0) für andere Übertragungssituationen, z. B. das Kopieren und Einfügen einer Zwischenablage.

dwStatus

Die Kopie des status Flags für das Objekt. Diese Flags werden durch die OLEMISC-Enumeration definiert. Wenn ein eingebettetes Objekt übertragen wird, wird es zurückgegeben, indem die IOleObject::GetMiscStatus-Methode aufgerufen wird.

dwFullUserTypeName

Der Offset zum Ermitteln des vollständigen Benutzernamennamens des übertragenen Objekts. Er gibt den Offset in Bytes vom Anfang der OBJECTDESCRIPTOR-Datenstruktur bis zur NULL-Zeichenfolge an, die den vollständigen Benutzernamennamen des übertragenen Objekts angibt. Der Wert ist 0, wenn die Zeichenfolge nicht vorhanden ist. Diese Zeichenfolge wird vom Ziel einer Datenübertragung verwendet, um Bezeichnungen im Dialogfeld Spezial einfügen zu erstellen. Die Zielanwendung muss in der Lage sein, die Fälle zu verarbeiten, wenn diese Zeichenfolge ausgelassen wird.

dwSrcOfCopy

Der Offset in Bytes vom Anfang der Datenstruktur bis zur NULL-Zeichenfolge, die die Quelle der Übertragung angibt. Das dwSrcOfCopy-Element wird in der Regel als Anzeigename des temporären Monikers implementiert, der die Datenquelle identifiziert. Der Wert für dwSrcOfCopy wird in der Zeile Quelle des Dialogfelds Spezial einfügen angezeigt. Ein Nullwert gibt an, dass die Zeichenfolge nicht vorhanden ist. Wenn dwSrcOfCopy 0 ist, wird die Zeichenfolge "Unbekannte Quelle" im Dialogfeld Spezial einfügen angezeigt.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Kopfzeile oleidl.h

Weitere Informationen

FORMATETC

Idataobject