【问题标题】:Some things missing from gnu gcc compiler headers? (commctrl.h)gnu gcc 编译器头文件中缺少一些东西? (commctrl.h)
【发布时间】:2010-08-08 15:54:14
【问题描述】:

我一直在使用带有 code::blocks ide 的 gcc 编译器,并注意到 commctrl.h 中缺少一些内容:

PBS_MARQUEE 和 PBM_SETMARQUEE 设置进度条来选取动画样式。

LVS_EX_DOUBLEBUFFER 用于列表视图上的双缓冲区...

可能还有很多缺失,但这些是我注意到的,我需要它们!

我已经下载了最新的 mingw 库,但它们仍然不在,我唯一能找到它们的地方是 Visual Studio 的标题,但我不想使用它

有什么方法可以在 gcc 中获取它们?

【问题讨论】:

    标签: c++ winapi mingw


    【解决方案1】:

    GCC 在支持 Windows 方面做得不好。这是一个很好的例子。这是一个优秀的编译器。在 Unix 机器上,我再也没有使用过其他任何东西,因为它是一个 优秀的 编译器,但是...

    MinGW 根本不包含一些 Windows 标头,而且对于那些包含的标头,它们并不总是与 Windows SDK 中的标头一样最新。

    最后,为了支持 COM 的某些位,GCC 需要能够解析 IDL,通常不用于非 Windows 系统,目前 GCC 不支持。

    Visual C++ Express(以及它的编译器包含在 Windows SDK 中)是免费的。你对它有什么反感?

    【讨论】:

      【解决方案2】:

      最好的方法是联系 mingw.org 或 mingw-w64,这是一个支持 x64 目标的分支。众所周知,后者对“缺少的功能”请求做出快速和友好的响应。您可以通过邮件列表、论坛或 IRC(见链接)联系他们。

      .... 从头开始​​。我的 mingw-w64 commctrl.h 头文件似乎包含这些宏。我不知道它们是否按预期工作,但试一试。下载链接在我上面链接的页面上。为了完整性和易用性,我会推荐 Sezero 的个人构建。您应该能够用存档中的文件夹替换您的 mingw 文件夹(确保 gcc.exe 等匹配)。

      【讨论】:

      • 几个 COM 宏与 64 位支持有什么关系?
      • 酷,我去下载它,我之前下载了一个,2010年更新的!它仍然没有它
      • @Billy:没有,但是 mingw-w64 比原版覆盖了更多的小黑角。 x64 支持只是主要区别
      【解决方案3】:

      您是否定义了正确的 _WIN32_WINNT 宏?看起来他们都需要 _WIN32_WINNT >= 0x0501。

      【讨论】:

      • IIRC, _WIN32_WINNT 特定于 Windows SDK/Visual Studio 的头文件。
      • 是的,我有所有重要的到 0x0701,我已经用 find 功能检查了 commctrl.h,显然不在我的
      猜你喜欢
      • 2015-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-10-19
      • 2021-08-04
      • 2013-10-20
      相关资源
      最近更新 更多