所以我一直在爲這兩個小時的更好的一部分工作,雖然我似乎遵循每個論壇/指南在互聯網上的確切說明,我仍然得到嘗試使用DirectX與Visual Studio 2010使用directX和Visual Studio 2010的鏈接器錯誤
以下鏈接錯誤,是我開始的代碼:
#include <D3DX10.h>
#include <iostream>
using namespace std;
ostream& operator<<(ostream& os, D3DXVECTOR3& v){
os << "(" << v.x << ", " << v.y << ", " << v.z << ")\n";
return os;
}
int main(){
return 0;
}
我已經SDK的下載和安裝,我已經手動設置適當的包括和項目配置屬性中的庫目錄。我還設置了額外的鏈接器輸入的依賴關係:
d3dx10.lib
d3dx10d.lib
不過,我仍然在編譯得到以下錯誤:
1> MSVCRTD.LIB(crtexew。 OBJ):錯誤LNK2019:解析外部符號的WinMain @在函數引用_ _tmainCRTStartup 16
1> C:\用戶\本\文件\的Visual Studio 2010 \項目\ DX實踐\調試\ DX Practice.exe:致命錯誤LNK1120:1未解決外部
任何和所有的幫助表示讚賞。
編輯:將int main()更改爲int WinMain()。新錯誤:
1> c:\ users \ ben \ documents \ visual studio 2010 \ projects \ dx practice \ dx practice \ main.cpp(10):warning C4007:'WinMain':must''__stdcall'
1> C:\用戶\ \視覺工作室2010 \項目\ DX實踐\ DX實踐\ main.cpp中(10)本\文件:錯誤C2731: '的WinMain':功能不能被重載
1> c:\ users \ ben \ documents \ visual studio 2010 \ projects \ dx practice \ dx practice \ main.cpp(10):參見'WinMain'聲明
EDIT2:想通了 -
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow)
感謝所有幫助:)
我從來沒有說過'WinMain'被定義爲'main'的方式。 –
爲什麼你需要首先使用'WinMain'?只要保持它'主'。更改鏈接器設置:鏈接器 - >系統 - >子系統 – Ajay