c++ - 如何使用 MinGW 调用 WMI

标签 c++ windows gcc wmi mingw

在网上(包括 MSDN)搜索了几天使用 C++ 获取硬件唯一 ID 的方法后,我发现我需要使用 WMI。其实我也可以找到一些很好的例子,比如 this一。问题是:我无法使用 MinGW 编译它,但是它在使用 Microsoft 编译器的 Visual Studio 上运行得很好,但是使用 MinGW(我的应用程序是用它编译的)它给了我很多错误。 这听起来可能是一个老问题,但不幸的是,经过几天的网络搜索,我至今找不到解决方案。我在 Windows 7 上使用 MinGW。

最佳答案

MinGW 不支持 WMI。在 MinGW64 中有一些努力,但仍然不能称为完整(例如,缺少 wbemuuid.lib)。

一些项目通过使用 Microsoft WMI SDK 或 MinGW64 中缺少的 WMI 库扩展 MinGW 来解决此问题(有关示例,请参见 this projectthis thread)。

为您的具体任务获取设备 UID 的另一种解决方案可能是使用 MinGW 很好支持的 Windows Setup API。可以找到使用它的一个很好的例子 on CodeProject site .

关于c++ - 如何使用 MinGW 调用 WMI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9996935/

相关文章:

c++ - 桥接模式C++代码编译错误

c++ - 迭代器的动态大小检查?

c++ - 给出错误答案的简单 C++ 代码

c++ - 为什么我的 C++ 程序中会出现死循环?

c++ - 在 Windows 内核设备驱动程序中使用 fprintf

gcc - 如何关闭 GCC 中的任何优化标志

C++ vector 有效地添加元素

windows - 如何判断另一个进程是否有事件的前台窗口? (Win32 API vb.net)

windows - 如何让 Windows 控制台\命令提示符显示颜色?

c++ - 为什么我得到cc1plus : error: unrecognized command line option "-arch"?