Bringe programm nicht zum laufen
-
ich hab folgendes Tutorial gelesen und den Quellcode kopiert
http://www.directxtutorial.com/Tutorial10/B-Direct3DBasics/dx10B1.aspx
Nun habe ich alle Header und Libraries gefunden, und versucht das Programm zu kompilieren. doch auch wenn ich ein Cli Projekt mache, gibt es eine Warnung, dass 18 nicht aufgelöste Verweise erscheinen.
Liegt es Vielleicht daran, dass ich eine 64 Bit Version von Windows 7 habe oder mach ich sonst was falsch?
-
Das hat nichts mit dem x64 zu tun. Zeig doch mal eine Liste der nicht aufgelösten Verweise, dann kann man recht schnell sagen, was noch fehlt.
-
das ist die Fehler Meldung:
ist leider etwas unübersichtlich1>------ Erstellen gestartet: Projekt: d3dtest, Konfiguration: Debug Win32 ------
1>Der Buildvorgang wurde am 10.01.2012 14:38:38 gestartet.
1>InitializeBuildStatus:
1> Aktualisieren des Timestamps von "Debug\d3dtest.unsuccessfulbuild".
1>GenerateTargetFrameworkMonikerAttribute:
1>Das Ziel "GenerateTargetFrameworkMonikerAttribute" wird übersprungen, da alle Ausgabedateien hinsichtlich der Eingabedateien aktuell sind.
1>ClCompile:
1> main.cpp
1> Alle Ausgaben sind aktuell.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A000071) ""extern "C" void __stdcall PostQuitMessage(int)" (?PostQuitMessage@@$$J14YGXH@Z)", auf das in Funktion ""long __stdcall WindowProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WindowProc@@$$FYGJPAUHWND__@@IIJ@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A00007A) ""extern "C" struct HICON__ * __stdcall LoadCursorW(struct HINSTANCE__ *,wchar_t const *)" (?LoadCursorW@@$$J18YGPAUHICON__@@PAUHINSTANCE__@@PB_W@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A00008A) ""extern "C" int __stdcall TranslateMessage(struct tagMSG const *)" (?TranslateMessage@@$$J14YGHPBUtagMSG@@@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A00008D) ""extern "C" unsigned short __stdcall RegisterClassExW(struct tagWNDCLASSEXW const *)" (?RegisterClassExW@@$$J14YGGPBUtagWNDCLASSEXW@@@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A00009A) ""extern "C" int __stdcall PeekMessageW(struct tagMSG *,struct HWND__ *,unsigned int,unsigned int,unsigned int)" (?PeekMessageW@@$$J220YGHPAUtagMSG@@PAUHWND__@@III@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A0000A2) ""extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A0000AA) ""extern "C" struct HWND__ * __stdcall CreateWindowExW(unsigned long,wchar_t const *,wchar_t const *,unsigned long,int,int,int,int,struct HWND__ *,struct HMENU__ *,struct HINSTANCE__ *,void *)" (?CreateWindowExW@@$$J248YGPAUHWND__@@KPB_W0KHHHHPAU1@PAUHMENU__@@PAUHINSTANCE__@@PAX@Z)", auf das in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A0000BA) ""extern "C" long __stdcall DefWindowProcW(struct HWND__ *,unsigned int,unsigned int,long)" (?DefWindowProcW@@$$J216YGJPAUHWND__@@IIJ@Z)", auf das in Funktion ""long __stdcall WindowProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WindowProc@@$$FYGJPAUHWND__@@IIJ@Z)" verwiesen wird.
1>main.obj : error LNK2028: Nicht aufgelöstes Token (0A0000C4) ""extern "C" long __stdcall DispatchMessageW(struct tagMSG const *)" (?DispatchMessageW@@$$J14YGJPBUtagMSG@@@Z)", auf das in Funktion ""extern "C" long __cdecl DispatchMessage(struct tagMSG const *)" (?DispatchMessage@@$$J0YAJPBUtagMSG@@@Z)" verwiesen wird.
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" long __stdcall DispatchMessageW(struct tagMSG const *)" (?DispatchMessageW@@$$J14YGJPBUtagMSG@@@Z)" in Funktion ""extern "C" long __cdecl DispatchMessage(struct tagMSG const *)" (?DispatchMessage@@$$J0YAJPBUtagMSG@@@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" long __stdcall DefWindowProcW(struct HWND__ *,unsigned int,unsigned int,long)" (?DefWindowProcW@@$$J216YGJPAUHWND__@@IIJ@Z)" in Funktion ""long __stdcall WindowProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WindowProc@@$$FYGJPAUHWND__@@IIJ@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" void __stdcall PostQuitMessage(int)" (?PostQuitMessage@@$$J14YGXH@Z)" in Funktion ""long __stdcall WindowProc(struct HWND__ *,unsigned int,unsigned int,long)" (?WindowProc@@$$FYGJPAUHWND__@@IIJ@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" int __stdcall TranslateMessage(struct tagMSG const *)" (?TranslateMessage@@$$J14YGHPBUtagMSG@@@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" int __stdcall PeekMessageW(struct tagMSG *,struct HWND__ *,unsigned int,unsigned int,unsigned int)" (?PeekMessageW@@$$J220YGHPAUtagMSG@@PAUHWND__@@III@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" int __stdcall ShowWindow(struct HWND__ *,int)" (?ShowWindow@@$$J18YGHPAUHWND__@@H@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" struct HWND__ * __stdcall CreateWindowExW(unsigned long,wchar_t const *,wchar_t const *,unsigned long,int,int,int,int,struct HWND__ *,struct HMENU__ *,struct HINSTANCE__ *,void *)" (?CreateWindowExW@@$$J248YGPAUHWND__@@KPB_W0KHHHHPAU1@PAUHMENU__@@PAUHINSTANCE__@@PAX@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" unsigned short __stdcall RegisterClassExW(struct tagWNDCLASSEXW const *)" (?RegisterClassExW@@$$J14YGGPBUtagWNDCLASSEXW@@@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>main.obj : error LNK2019: Verweis auf nicht aufgelöstes externes Symbol ""extern "C" struct HICON__ * __stdcall LoadCursorW(struct HINSTANCE__ *,wchar_t const *)" (?LoadCursorW@@$$J18YGPAUHICON__@@PAUHINSTANCE__@@PB_W@Z)" in Funktion ""extern "C" int __stdcall WinMain(struct HINSTANCE__ *,struct HINSTANCE__ *,char *,int)" (?WinMain@@$$J216YGHPAUHINSTANCE__@@0PADH@Z)".
1>C:\Users\Marvin\documents\visual studio 2010\Projects\d3dtest\Debug\d3dtest.exe : fatal error LNK1120: 18 nicht aufgelöste externe Verweise.
1>
1>Fehler beim Erstellen
1>
1>Verstrichene Zeit 00:00:01.38
========== Erstellen: 0 erfolgreich, Fehler bei 1, 0 aktuell, 0 übersprungen ==========
-
#pragma comment (lib, "user32.lib")
-
Hei wenn ich bei strings das L vorm String entfern läufts, aber nicht cli, sondern nur im normalen c++
Ich weiss nur nicht wieso
-
Ahhh, das erklärt, warum du überall die W-Varianten der Funktionen benutzt. Das L-Präfix bei den Literalen steht für wide characters, also
const wchar_t *
. Vermutlich ist bei dir im Projekt definiert, dass du normaleconst char *
benutzen möchtest, weshalb die W-Varianten nicht mit eingebunden werden.
-
Warum benutzt Du CLI?
-
naja, nachdem das normale projekt nicht geklappt hat hab ichs mal probiert, und gedacht es sei ein fortschritt, aber das war nicht so
-
sorry rant hab di erst jetzt bemerkt hab, ja das wars danke