C/C++获取操作系统、CPU、内存信息、硬盘、IP和MAC、进程信息(windows和linux) |
您所在的位置:网站首页 › 如何获取程序源码信息的方法 › C/C++获取操作系统、CPU、内存信息、硬盘、IP和MAC、进程信息(windows和linux) |
有时候需要在工程里面获取一些系统或者硬件的信息,比如系统版本,cpu,内存,显卡,硬盘,网络等,作为后续软件功能判断的依据,甚至参与性能算法自适应建模 Windows 操作系统和内存信息在windows下通过系统的API来获取,CPU信息则需要需要通过底层CPUID指令取得 代码: #include #include #include #include // include must before window.h #include #include #pragma comment(lib, "iphlpapi.lib") #pragma warning(disable: 4996) // avoid GetVersionEx to be warned // ***** global macros ***** // static const int kMaxInfoBuffer = 256; #define GBYTES 1073741824 #define MBYTES 1048576 #define KBYTES 1024 #define DKBYTES 1024.0 // ---- get os info ---- // void getOsInfo() { // get os name according to version number OSVERSIONINFO osver = { sizeof(OSVERSIONINFO) }; GetVersionEx(&osver); std::string os_name; if (osver.dwMajorVersion == 5 && osver.dwMinorVersion == 0) os_name = "Windows 2000"; else if (osver.dwMajorVersion == 5 && osver.dwMinorVersion == 1) os_name = "Windows XP"; else if (osver.dwMajorVersion == 6 && osver.dwMinorVersion == 0) os_name = "Windows 2003"; else if (osver.dwMajorVersion == 5 && osver.dwMinorVersion == 2) os_name = "windows vista"; else if (osver.dwMajorVersion == 6 && osver.dwMinorVersion == 1) os_name = "windows 7"; else if (osver.dwMajorVersion == 6 && osver.dwMinorVersion == 2) os_name = "windows 10"; std::cout |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |