起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 153|回复: 6

【结】平台有没有函数获得CPU的ID、硬盘ID或网卡Mac地址?**

[复制链接]
发表于 2008-9-22 14:49:58 | 显示全部楼层 |阅读模式
如题
回复

使用道具 举报

 楼主| 发表于 2008-9-22 14:53:03 | 显示全部楼层
我在网上找到一段delphi函数可以做到,如下:
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-22 14:53:40 | 显示全部楼层
function GetWMIProperty(WMIType, WMIProperty:String):String;
var
  Wmi, Objs, Obj:OleVariant;
  Enum:IEnumVariant;
  C:Cardinal;
begin
  Wmi:= CreateOleObject('WbemScripting.SWbemLocator');
  Objs := Wmi.ConnectServer('.','root\cimv2').ExecQuery('Select * from Win32_'+ WMIType);
  Enum:=IEnumVariant(IUnknown(Objs._NewEnum));
  Enum.Reset;
  Enum.Next(1,Obj,C);    //需要更多的信息请使用循环
  Obj:=Obj.Properties_.Item(WMIProperty,0).Value;
  if VarIsArray(Obj) then Result:=Obj[0]
  else Result:=Obj;
end;
请问,这段函数在平台上该怎么写?
回复 支持 反对

使用道具 举报

发表于 2008-9-22 15:00:01 | 显示全部楼层
最简单的,包装进来就可以了。在论坛里面搜索第三方控件关键词
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-22 15:03:05 | 显示全部楼层
包装起来太麻烦,还得导入bpl和dll,直接改写不行吗?
回复 支持 反对

使用道具 举报

发表于 2008-9-22 15:26:36 | 显示全部楼层
里面有很多接口枚举的,不一定可以。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-9-25 10:56:25 | 显示全部楼层
只好导入包了,结贴了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-22 15:43 , Processed in 0.043550 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表