c++ builder通过wmi获取系统信息代码拜托各位了 3Q

哪位大侠会用VC6获得CPU、BIOS、硬盘等编号的信息。。。。发点写好的例子到我邮箱:hebitao505@163.com兄弟万分感谢。。。... 哪位大侠会用VC6获得CPU、BIOS、硬盘等编号的信息。。。。 发点写好的例子到我邮箱:hebitao505@163.com 兄弟万分感谢。。。 展开
 我来答
粉丝丶MK
2014-07-18 · TA获得超过200个赞
知道答主
回答量:118
采纳率:0%
帮助的人:146万
展开全部
C++ Builder 通过 WMI 获取系统信息 本文来自: www.dezai.cn 德仔工作室 http://www.dezai.cn/Channel/Web/ArticleShow.Aspx?AI=26702 WMI: Windows Management Instrumentation (Windows 管理工具) 通过 WMI 可以获取主板、BIOS、磁盘、显卡、网络等几乎所有的系统信息。 利用这个工具可以管理本地或客户端系统中几乎所有的信息。 很多网络管理工具都是基于WMI开发的。在 Windows NT/2000/XP/2003 都有这个工具, 在 Windows 98 里面可以选择安装这个工具。 ① 初始化 COM 接口: 访问 WMI, 必须先初始化 COM 接口, 在程序的一开始调用 CoInitialize(NULL); 初始化, 在结束时调用 CoUninitialize(); 释放资源。 这两个函数在 #include 里面定义。② 获取访问 WMI 权限: CoInitializeSecurity(NULL, -1, NULL, NULL, RPC_C_AUTHN_LEVEL_PKT, RPC_C_IMP_LEVEL_IMPERSONATE, NULL, EOAC_NONE, 0); 如果这个函数返回 S_OK 获取权限成功, 否则为失败。字串4③ 通过 IWbemLocator 和 IWbemServices 这两个 COM 接口访问 WMI, 获取系统信息: 这个函数的参数: lpList 返回信息, wsClass 为要查找的系统信息类, 这些 COM 接口在 #include 里定义。void GetWmiInfo(TStrings *lpList, WideString wsClass){ IWbemLocator *pWbemLocator = NULL; if(CoCreateInstance(CLSID_WbemAdministrativeLocator, NULL, CLSCTX_INPROC_SERVER|CLSCTX_LOCAL_SERVER, IID_IUnknown, (void**)&pWbemLocator) == S_OK) { IWbemServices *pWbemServices = NULL; WideString wsNamespace = (L"root\\cimv2"); if(pWbemLocator->ConnectServer(wsNamespace, NULL, NULL, NULL, 0, NULL, NULL, &pWbemServices) == S_OK) { IEnumWbemClassObject *pEnumClassObject = NULL; 字串4 WideString wsWQL=L"WQL", wsQuery=WideString(L"Select * from ")+wsClass; if(pWbemServices->ExecQuery(wsWQL, wsQuery, WBEM_FLAG_RETURN_IMMEDIATELY,NULL, &pEnumClassObject) == S_OK) { IWbemClassObject *pClassObject = NULL; ULONG uCount = 1, uReturned; if(pEnumClassObject->Reset() == S_OK) { int iEnumIdx = 0; while(pEnumClassObject->Next(WBEM_INFINITE, uCount, &pClassObject, &uReturned) == S_OK) 字串8本文来自: www.dezai.cn 德仔工作室 http://www.dezai.cn/Channel/Web/ArticleShow.Aspx?AI=26702
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式