【问题标题】:Cannot include certain header files using the Visual C++ compiler无法使用 Visual C++ 编译器包含某些头文件
【发布时间】:2013-09-21 05:23:43
【问题描述】:

您好,我正在使用 C 语言进行 Winsock 编程。我相信为了让我能够访问(或与 Winsock 相关的任何其他头文件)头文件,我必须安装 Visual C++ 2010 并将其设置为我的默认编译器。所以我下载了它,并在 CodeBlocks 中将它设置为我的编译器。我运行了一些 Winsock 代码,我收到了这条消息:

C:\Users\Jared\Documents\Test.c|6|fatal error C1083: Cannot open include file: 'winsock2.h': No such file or directory|

我也收到包含“winsock.h”和“windows.h”的此消息。这与 Visual C++ 编译器有关。我尝试安装 Visual C++ 2008 并将其用作我的编译器并得到相同的消息。然后我读到我必须安装微软的 SDK。我下载并安装它,它得到一个错误,说我无法安装它(这是.Net framework 4.0 版本)。然后我尝试了 3.5 版本,它安装得很好,但我的编译器仍然找不到头文件。我有.net framework 4.0,所以我看不到问题。我还读到我必须通过转到工具>选项>项目和解决方案>VC++目录在Visual C++中包含一些头文件,我收到以下消息:

"VC++ Directory editing in tools > options has been deprecated."

Visual C++ 2010 不再支持此功能。有没有人有解决方案或可以帮助我解决这个问题?

长话短说:我不能使用 Visual C++ 2010 编译器包含“winsock.h”、“winsock2.h”或“windows.h”。

感谢所有帮助。

【问题讨论】:

    标签: c visual-c++ include winsock


    【解决方案1】:

    在 Visual C++ 2010 中,建议使用属性表而不是这种全局目录设置编辑。您需要在 AppData 文件夹中编辑用户设置属性表(可能是 Microsoft.Cpp.Win32.user.props)。您可以通过 View->Property Manager 在 UI 中通过 Property Manager 执行此操作并浏览该工作表。

    但是,如果您正确安装了 $(WindowsSdkDir)include,我认为您应该在包含目录中包含它。

    【讨论】:

    • Visual Studio 是最有用的编译器,如果它运行良好的话。但如果不是上帝拯救那个可怜的灵魂。格式没有什么帮助。
    猜你喜欢
    • 2015-03-19
    • 2013-01-03
    • 2013-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-15
    • 2011-06-13
    • 1970-01-01
    相关资源
    最近更新 更多