Freigeben über


IDirect3DVolume9::SetPrivateData-Methode (d3d9helper.h)

Ordnet Daten dem Volume zu, das für die Verwendung durch die Anwendung und nicht für Direct3D vorgesehen ist.

Syntax

HRESULT SetPrivateData(
  [in] REFGUID    refguid,
  [in] const void *pData,
  [in] DWORD      SizeOfData,
  [in] DWORD      Flags
);

Parameter

[in] refguid

Typ: REFGUID

Verweis auf den global eindeutigen Bezeichner, der die festzulegenden privaten Daten identifiziert.

[in] pData

Typ: const void*

Zeiger auf einen Puffer, der die Daten enthält, die dem Volume zugeordnet werden sollen.

[in] SizeOfData

Typ: DWORD

Größe des Puffers bei pData in Bytes.

[in] Flags

Typ: DWORD

Wert, der den Typ der übergebenen Daten beschreibt oder der Anwendung angibt, dass die Daten ungültig werden sollen, wenn sich die Ressource ändert.

Element BESCHREIBUNG
(ohne) Wenn keine Flags angegeben sind, weist Direct3D Arbeitsspeicher zu, um die Daten im Puffer zu speichern, und kopiert die Daten in den neuen Puffer. Der von Direct3D zugewiesene Puffer wird je nach Bedarf automatisch freigegeben.
D3DSPD_IUNKNOWN Die Daten in pData sind ein Zeiger auf eine IUnknown-Schnittstelle . SizeOfData muss auf die Größe eines Zeigers auf eine IUnknown-Schnittstelle festgelegt werden, sizeof(IUnknown*). Direct3D ruft IUnknown automatisch über pData und IUnknown auf, wenn die privaten Daten zerstört werden. Private Daten werden durch einen nachfolgenden Aufruf von IDirect3DVolume9::SetPrivateData mit derselben GUID, einen nachfolgenden Aufruf von IDirect3DVolume9::FreePrivateData oder beim Freigeben des IDirect3D9-Objekts zerstört. Weitere Informationen finden Sie in den Hinweisen.

Rückgabewert

Typ: HRESULT

Wenn die Methode erfolgreich ist, wird der Rückgabewert D3D_OK. Wenn die Methode fehlschlägt, kann der Rückgabewert einer der folgenden sein: D3DERR_INVALIDCALL, E_OUTOFMEMORY.

Hinweise

Direct3D verwaltet den Arbeitsspeicher bei pData nicht. Wenn dieser Puffer dynamisch zugeordnet wurde, liegt es in der Verantwortung der aufrufenden Anwendung, den Arbeitsspeicher freizugeben.

Daten werden nach Wert übergeben, und mehrere Datensätze können einem einzelnen Volume zugeordnet werden.

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d9helper.h (einschließlich D3D9.h)
Bibliothek D3D9.lib

Weitere Informationen

IDirect3DVolume9

IDirect3DVolume9::FreePrivateData

IDirect3DVolume9::GetPrivateData