我正在尝试从Windows API编译一些代码。它说某些.lib和.h文件必须包含在我正在使用的Windows 7 SDK版本中。 Visual Studio显示.h文件,但在我尝试构建项目时会出现链接器错误(L2019)。
如何查看我的Win7 SDK版本,以及如何查看是否包含必要的.lib文件?
答案 0 :(得分:0)
可能的解决方案:转到“C:\ Program Files \ Microsoft SDKs \ Windows”并查看是否安装了版本(或者是否存在该路径)。
答案 1 :(得分:0)
你真的告诉链接器它应该链接相应的.lib文件吗?项目模板仅链接最流行的.lib文件,kernel32.lib,user32.lib等。如果使用“异常”API函数,则还必须告诉链接器链接导入库。
项目+属性,链接器,输入,附加依赖项。如果您不知道需要什么.lib,请查看SDK文档中的API函数。 .lib文件列在文章的底部。
您可以做的另一件事是在源代码中使用#pragma告诉链接器链接.lib。例如:
#include <shlwapi.h>
#pragma comment(lib, "shlwapi.lib") // NOTE: need to link this .lib to get shell functions