程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi讀取注冊表中硬件相關信息

Delphi讀取注冊表中硬件相關信息

編輯:Delphi

Delphi從注冊表中獲取Windows硬件信息,比如獲取到系統BIOS日期、BiOS標志符,獲取CPU標識、浮點處理CPU型號、還可獲取電源電池信息,包括電池使用方案等,以下來看核心代碼:

vIEw source print? 01 unit Unit1; 02 interface 03 uses 04   Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 05   Dialogs, StdCtrls,Registry,INIFILES;  //必須加入 06 type 07   TForm1 = class(TForm) 08     Button1: TButton; 09     RadioButton1: TRadioButton; 10     Memo1: TMemo; 11     RadioButton2: TRadioButton; 12     RadioButton3: TRadioButton; 13     procedure Button1Click(Sender: TObject); 14   private 15     { Private declarations } 16   public 17     { Public declarations } 18   end; 19 var 20   Form1: TForm1; 21 implementation 22 {$R *.dfm} 23 procedure TForm1.Button1Click(Sender: TObject); 24 Var  reg,reg1:TRegistry; 25 begin 26   reg:=TRegistry.Create; 27   reg.RootKey:=HKEY_LOCAL_MacHINE; 28 If RadioButton1.Checked Then 29  if reg.OpenKey('HARDWARE\DESCRIPTION\System',falsethen 30   Begin 31    Memo1.Clear;     //清空原來的內容 32    memo1.lines.add('系統BiOS日期    '+reg.ReadString('SystemBiOSDate')); 33    memo1.lines.add('BiOS標志符     '+reg.ReadString('IdentifIEr')); 34   end; 35  reg.closekey; 36  If RadioButton2.Checked Then 37  Begin 38   Memo1.Clear;  //清空原來的內容 39   if reg.OpenKey('hardware\description\system\centralprocessor\0',falsethen 40    Begin 41     memo1.lines.add('中央處理器CPU標識     '+reg.ReadString('VendorIdentifIEr')); 42     memo1.lines.add('中央處理器CPU型號     '+reg.ReadString('IdentifIEr')); 43    end; 44   reg.closekey; 45  if reg.OpenKey('hardware\description\system\FloatingPointProcessor\0',falsethen 46   Begin 47    memo1.lines.add('浮點處理CPU型號      '+reg.ReadString('IdentifIEr')); 48   end; 49   reg.closekey; 50  end; 51 reg1:=TRegistry.Create; 52   reg1.RootKey:=HKEY_CURRENT_USER; //獲取電源信息 53  If RadioButton3.Checked Then 54  Begin 55  Memo1.Clear;     //清空原來的內容 56  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\0',falsethen 57    memo1.lines.add('電源使用方案一    '+reg1.ReadString('Name')); 58   reg1.closekey; 59  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\1',falsethen 60    memo1.lines.add('電源使用方案二    '+reg1.ReadString('Name')); 61    reg1.closekey; 62  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\2',falsethen 63    memo1.lines.add('電源使用方案三    '+reg1.ReadString('Name')); 64    reg1.closekey; 65  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\3',falsethen 66    memo1.lines.add('電源使用方案四    '+reg1.ReadString('Name')); 67    reg1.closekey; 68  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\4',falsethen 69    memo1.lines.add('電源電池方案五    '+reg1.ReadString('Name')); 70    reg1.closekey; 71  if reg1.OpenKey('Control Panel\PowerCfg\PowerPolicIEs\5',falsethen 72    memo1.lines.add('電源使用方案六    '+reg1.ReadString('Name')); 73    reg1.closekey; 74 end; 75  reg1.closekey; 76 end; 77 end.
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved