Visual Studio 2013:致命错误C1083:无法打开包括文件:“winsock2.h”:没有那个文件或目录。

15
我将一些“本地”的C++项目从Windows 7上的Visual Studio 2010迁移到了Windows 8.1上的Visual Studio 2013。重建后出现了这个错误。我意识到我没有安装Windows SDK,于是我安装了它,但仍然得到相同的错误。还有其他人在干净的VS项目迁移中遇到过这个问题吗?

2
你需要安装Windows SDK。 - Damian
是的,Damian,你说得对。但在迁移项目后安装它并不能解决项目的问题。请参见下面我的答案以获取更多详细信息。 - moodboom
2个回答

13

我在SDK文件夹中搜索找到了缺失的文件。由于项目迁移后安装了SDK,因此路径未包含在我的项目中。通过添加包含和库路径,我成功解决了问题。

我将以下文件夹添加到我的包含路径中:

$(WindowsSdkDir)include\um

$(WindowsSdkDir)include\shared

现在我的Debug和Release完整的包含路径如下:

$(WindowsSdkDir)include;$(WindowsSdkDir)include\um;$(WindowsSdkDir)include\shared;$(FrameworkSDKDir)\include;$(VCInstallDir)include;$(VCInstallDir)atlmfc\include;

我将以下文件夹添加到我的库路径中(请注意,这适用于32位版本!64位版本请参阅x64,ARM构建请参阅arm...):

$(WindowsSdkDir)lib\winv6.3\um\x86

我的完整库路径如下:

$(WindowsSdkDir)lib;$(WindowsSdkDir)lib\winv6.3\um\x86;$(FrameworkSDKDir)\lib;$(VCInstallDir)lib;$(VCInstallDir)atlmfc\lib

请注意,如果您有原始项目文件的副本,则还可以在安装Windows SDK后重新迁移它以解决问题。


6

包含路径:$(VC_IncludePath);$(WindowsSDK_IncludePath);

库路径:$(VC_LibraryPath_x86);$(WindowsSDK_LibraryPath_x86);


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接