![]() |
DirectX9 Implementation
Ja, ich muss sagen, ich bin verrückt aber naja,
ich habe mir überlegt eine weiter D3D9 implementation zu schreiben... allerdings komme ich nicht weiter... ich habe warscheinlich mal wieder einen denkefehler...
Delphi-Quellcode:
Soweit so gut...
{ IDirectX9 : DirectX9 HauptInterface }
IDirectX9 = interface(IUnknown) ['{1DD9E8DA-1C77-4d40-B0CF-98FEFDFF9512}'] ... { GetAdapterCount : Gibt die Anzahl der Adapter zurück } function GetAdapterCount() : Cardinal; stdcall; ... end; { DX9Create : Erstellt eine neue DirectX9 Interface } function DX9Create(DX9Version : Cardinal) : Pointer; stdcall; implementation { DX9Create : imported from d3d9.dll , named Direct3DCreate9 } function DX9Create; external 'd3d9.dll' name 'Direct3DCreate9';
Delphi-Quellcode:
Das Programm stüzt ab und beendet sich. keine fehlermeldung nix.
var
DX9 : IDirectX9; DX9 := IDirectX9(DX9Create(DX9_SDK_VERSION)); WriteLn(DX9.GetAdapterCount); //Ich erwarte eigendlich das hier die Anzahl der Adapter ausgegeben wird Alles ist stdcall und müsste meines erachtens eigendlich laufen... :wall: |
Re: DirectX9 Implementation
haste CoInitialize aufgerufen?
Und überprüfst du, ob DX9 = nil ist? |
Re: DirectX9 Implementation
Der Fehler lag darin, dass der Wert der DX9_SDK_VERSION fehlerhaft war.
Somit schlägt auch die DX9Create fehl! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:53 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz