DirectDrawCreate-Funktion (ddraw.h)
Erstellt eine instance eines DirectDraw-Objekts. Ein DirectDraw-Objekt, das mit dieser Funktion erstellt wird, unterstützt nicht den vollständigen Satz von Direct3D-Schnittstellen in DirectX 7.0. Verwenden Sie die DirectDrawCreateEx-Funktion , um ein DirectDraw-Objekt zu erstellen, das alle Features von Direct3D in DirectX 7.0 verfügbar machen kann.
Syntax
HRESULT DirectDrawCreate(
[in] GUID *lpGUID,
[out] LPDIRECTDRAW *lplpDD,
[in] IUnknown *pUnkOuter
);
Parameter
[in] lpGUID
Ein Zeiger auf den global eindeutigen Bezeichner (Globally Unique Identifier, GUID), der den zu erstellenden Treiber darstellt. Dies kann NULL sein, um den aktiven Anzeigetreiber anzugeben, oder Sie können eines der folgenden Flags übergeben, um das Verhalten des aktiven Anzeigetreibers für Debugzwecke einzuschränken:
DDCREATE_EMULATIONONLY
Das DirectDraw-Objekt verwendet Emulation für alle Features. Es nutzt keine hardwaregestützten Features.
DDCREATE_HARDWAREONLY
Das DirectDraw-Objekt emuliert niemals Features, die von der Hardware nicht unterstützt werden. Versuche, Methoden aufzurufen, die nicht unterstützte Features erfordern, schlagen fehl und geben DDERR_UNSUPPORTED zurück.
[out] lplpDD
Ein Zeiger auf eine Variable, die auf einen gültigen IDirectDraw-Schnittstellenzeiger festgelegt werden soll, wenn der Aufruf erfolgreich ist.
[in] pUnkOuter
Ermöglicht zukünftige Kompatibilität mit COM-Aggregationsfeatures. Derzeit gibt diese Funktion jedoch einen Fehler zurück, wenn dieser Parameter nicht NULL ist.
Rückgabewert
Wenn die Funktion erfolgreich ist, wird der Rückgabewert DD_OK.
Wenn ein Fehler auftritt, kann die Funktion einen der folgenden Fehlerwerte zurückgeben:
- DDERR_DIRECTDRAWALREADYCREATED
- DDERR_GENERIC
- DDERR_INVALIDDIRECTDRAWGUID
- DDERR_INVALIDPARAMS
- DDERR_NODIRECTDRAWHW
- DDERR_OUTOFMEMORY
Hinweise
Diese Funktion versucht, ein DirectDraw-Objekt zu initialisieren, und legt dann einen Zeiger auf das -Objekt fest, wenn der Aufruf erfolgreich ist.
Wenn Sie auf Computern mit mehreren Monitoren NULL für lpGUID angeben, wird das DirectDraw-Objekt im Emulationsmodus ausgeführt, wenn die normale Kooperativebene festgelegt ist. Um die Hardwarebeschleunigung auf diesen Computern zu nutzen, geben Sie die GUID des Geräts an.
Sie müssen LoadLibrary verwenden, um explizit eine Verknüpfung mit Ddraw.dll und dann GetProcAddress für den Zugriff auf die DirectDrawCreate-Funktion zu verwenden.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | ddraw.h |
Bibliothek | Ddraw.lib |
DLL | Ddraw.dll |