环境Vs2015, Win10
添加lib的方法在末尾
下面的错误都是我在写Direct3D程序中遇到的, 记下来方便查找
4.ws2_32.lib
3. version.lib
_GetFileVersionInfoSizeA@8
_GetFileVersionInfoA@16
_VerQueryValueA@16
2. imm32.lib
无法解析的外部符号_ImmGetDefaultIMEWnd@4
_ImmGetIMEFileNameA@12
_ImmIsIME@4
_ImmSimulateHotKey@8
_ImmGetContext@4
_ImmReleaseContext@8
_ImmGetCompositionStringA@16
_ImmGetCompositionStringW@16
_ImmSetCompositionStringW@24
_ImmGetCandidateListA@16
_ImmGetCandidateListW@16
_ImmGetConversionStatus@12
_ImmSetConversionStatus@12
_ImmGetConversionStatus@12
_ImmNotifyIME@16
_ImmGetVirtualKey@4
1.添加 legacy_stdio_definitions.lib
dxerr.lib(dxerrw.obj) : error LNK2019: 无法解析的外部符号 __vsnwprintf,该符号在函数 "long __stdcall StringVPrintfWorkerW(unsigned short *,unsigned int,unsigned int *,unsigned short const *,char *)" (?StringVPrintfWorkerW@@YGJPAGIPAIPBGPAD@Z) 中被引用
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
项目属性中的
VC++目录中的
包含目录中填
D:\Program Files\Microsoft DirectX SDK (June 2010)\Include;$(IncludePath)
库目录填
D:\Program Files\Microsoft DirectX SDK (June 2010)\Lib\x86;$(LibraryPath)
链接器->输入
写Direct3D9_Sample文档中的样例程序时添加过的所有lib文件
version.lib
imm32.lib
ws2_32.lib
winmm.lib
legacy_stdio_definitions.lib
dinput8.lib
dxerr.lib
dxguid.lib
d3dx9d.lib
d3dx10d.lib
d3d9.lib
comctl32.lib
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
如何在vs2015中添加lib
1.打开/新建一个项目
2.点击视图->属性管理器
3.右键Microsoft.Cpp.Win32.user选择属性
4.链接器->输入->附加依赖项->编辑
5.在第一个输入框中输入.lib文件名 (不区分大小写)