gpt4 book ai didi

c++ - 如何在 Windows 和 Linux 上用 C++ 读取系统信息?

转载 作者:可可西里 更新时间:2023-11-01 10:09:52 27 4
gpt4 key购买 nike

我需要读取系统信息,例如 C++ 中的 CPU/RAM/磁盘使用情况。也许还有交换、网络和流程,但这些都不那么重要。

它可能已经完成了数千次,所以我首先尝试搜索一个库。有人here建议SIGAR ,这似乎符合我的需要,但它有一个 GPL许可证,它用于包含在专有产品中。所以这里不是一个选项。

我觉得这不太容易实现,因为它需要在多个平台上进行测试。所以图书馆会很受欢迎。

如果您不知道任何库,能否为我指明这两个平台的正确方向?

最佳答案

在 Windows 上,尝试 GetDiskFreeSpaceExGlobalMemoryStatusEx .

Linux 稍微复杂一些,因为它允许您挂载卷。您总是可以 system() 输出到“df”,但这太可怕了。由于 Linux 是开源的,只需查看“df”的源代码即可了解其工作原理! :)

如果您没有时间:对于 UNIX 变体(包括 Linux),您可以尝试 libstatgrab .它是 LGPL/专有友好的。您可能需要 #ifdef 一些专门针对 Windows 的代码,但幸运的是,Windows 调用很简单。最坏情况:200 行。如果你觉得慷慨,你可以为全面的 Windows 支持贡献一个补丁:)

祝你好运!

关于c++ - 如何在 Windows 和 Linux 上用 C++ 读取系统信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2496581/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com