CodeBlock10.2自带的MINGW不支持Vista+
偶然间发现了这个问题,最近随便翻了一下核心编程,看到这个函数:
CreateBoundaryDescriptor
Requirements
Minimum supported client
Windows Vista
Minimum supported server
Windows Server 2008
Header
- WinBase.h (include Windows.h)
Library
- Kernel32.lib
DLL
- Kernel32.dll
Unicode and ANSI names
CreateBoundaryDescriptorW (Unicode) and CreateBoundaryDescriptorA (ANSI)
看到最小支持平台是VISTA, 这个函数显然在老的MINGW包中的WinBase.h找不到,而在Visual Studio 2010新建一个C++ Console,同样的函数调用却没问题,原因是这时的头文件引用了正确的路径如C:\Program Files\Windows SDK\V7.0A\Include\Winbase.h。
解决办法:
在Codeblocks中升级MINGW到最新(很遗憾,最新也没有),或者切换编译器以及include路径或者切换到Visual C++上来开发Windows API