Delphi WMI[3] 获取硬盘ID的方法(无需管理员权限)  
官方Delphi 学习QQ群: 682628230(三千人)
频道

Delphi WMI[3] 获取硬盘ID的方法(无需管理员权限)


Delphi WMI[3] 获取硬盘ID的方法(无需管理员权限)


   

function GetWMIHardNo() : String;

var

  Locator : OleVariant;

  WMI     : OleVariant;

  RET     : OleVariant;

  Enum    : IEnumVariant;

  Tmp     : OleVariant;

  Value   : Cardinal;

begin

  Result := '';

 

  try

    Locator := CreateOleObject('WbemScripting.SWbemLocator');

    WMI     := Locator.ConnectServer('.', '', '', '');

    RET     := WMI.ExecQuery('Select * From  Win32_DiskDrive');  //Win32_DiskDrive  Win32_PhysicalMedia

    Enum    := IUnknown(RET._NewEnum) as IEnumVariant;

 

    while (Enum.Next(1, Tmp, Value)= S_OK) do

    begin

      Result := Trim(Tmp.SerialNumber);

 

      if (Length(Result) > 0) then

      begin  break; end;

    end;

     

  finally

    Locator := UnAssigned;

  end;

   

end;

   



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.30001997947693 seconds