findet directx funktionen nicht
-
hi
ich habe directx installiert und wollte testen, ob alles funktioniert.wenn ich diesen code compile:
#include <Windows.h> #include <StdIO.h> #include <D3D9.h> int WINAPI WinMain( HINSTANCE hinstance, HINSTANCE hprevinstance, char* pcCmdLine, int iShowCmd){ PDIRECT3D9 pD3D=Direct3DCreate9(D3D_SDK_VERSION); if(!pD3D) return 1; pD3D->Release(); return 0; };
bekomme ich den fehler:
1>------ Erstellen gestartet: Projekt: dx3d, Konfiguration: Debug Win32 ------ 1>test.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_Direct3DCreate9@4" in Funktion "_WinMain@16". 1>G:\_proggen\_workspaces\c++\visual studio 2010\Projects\Logfile\Debug\dx3d.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise. ========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
wieso kann die Direct3DCreate9 funktion nicht gefunden werden (habe ja D3D9 eingebunden)?
-
Die denötigte Library wurde in den Linker Optionen nicht angegeben, bzw. nicht per #pragma comment(lib,"...") angegeben.
-
Wie Martin Richter schon gesagt hat hast du vergessen d3d9.lib zu linken...
-
ok
habe jetzt
Microsoft DirectX SDK %28June 2010%29\Include
in vc++-verzeichnisse gepackt und
Microsoft DirectX SDK %28June 2010%29\Lib\
in linker allgemein.jetzt bekomme ich die gleichen fehler
1>test.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol "_Direct3DCreate9@4" in Funktion "_WinMain@16". 1>G:\_proggen\_workspaces\c++\visual studio 2010\Projects\Logfile\Debug\dx3d.exe : fatal error LNK1120: 1 nicht aufgelöste externe Verweise.
(auch wenn ich Microsoft DirectX SDK %28June 2010%29\Lib\x86 linke)
-
ok wenn ich es mit #pragma comment(lib,"d3d9.lib")mache, dann geht es.....
wieso geht es nicht, wenn ich das normal linke?
-
Weil du offenbar nur die Verzeichnisse zu den Suchpfaden hinzugefügt aber die lib nicht gelinkt hast!?