{XP 注册表中的主键}
HKEY_CLASSES_ROOT {文件类型信息}
HKEY_CURRENT_USER {当前用户信息}
HKEY_LOCAL_MACHINE {软硬件信息}
HKEY_USERS {所有用户信息}
HKEY_CURRENT_CONFIG {当前配置信息}
{Delphi 定义的常量}
HKEY_CLASSES_ROOT = DWORD($80000000);
HKEY_CURRENT_USER = DWORD($80000001);
HKEY_LOCAL_MACHINE = DWORD($80000002);
HKEY_USERS = DWORD($80000003);
HKEY_PERFORMANCE_DATA = DWORD($80000004);
HKEY_CURRENT_CONFIG = DWORD($80000005);
HKEY_DYN_DATA = DWORD($80000006);
本例效果图:
代码文件:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
RadioGroup1: TRadioGroup;
procedure FormCreate(Sender: TObject);
procedure RadioGroup1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
uses Registry;
procedure TForm1.FormCreate(Sender: TObject);
begin
ListBox1.Align := alLeft;
RadioGroup1.Items.CommaText := 'HKEY-CLASSES-ROOT,' +
'HKEY-CURRENT-USER,' +
'HKEY-LOCAL-MACHINE,' +
'HKEY-USERS,' +
'HKEY-CURRENT-CONFIG';
end;
procedure TForm1.RadioGroup1Click(Sender: TObject);
var
reg: TRegistry;
begin
reg := TRegistry.Create;
case RadioGroup1.ItemIndex of
0: reg.RootKey := HKEY_CLASSES_ROOT;
1: reg.RootKey := HKEY_CURRENT_USER; {这是 RootKey 的默认值}
2: reg.RootKey := HKEY_LOCAL_MACHINE;
3: reg.RootKey := HKEY_USERS;
4: reg.RootKey := HKEY_CURRENT_CONFIG;
end;
reg.OpenKey('', False);
reg.GetKeyNames(ListBox1.Items);
reg.CloseKey;
reg.Free;
end;
end.
窗体文件:
object Form1: TForm1
Left = 0
Top = 0
Caption = 'Form1'
ClientHeight = 176
ClientWidth = 325
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'Tahoma'
Font.Style = []
OldCreateOrder = False
OnCreate = FormCreate
PixelsPerInch = 96
TextHeight = 13
object ListBox1: TListBox
Left = 0
Top = 8
Width = 153
Height = 134
ItemHeight = 13
TabOrder = 0
end
object RadioGroup1: TRadioGroup
Left = 159
Top = 8
Width = 158
Height = 160
Caption = 'RadioGroup1'
TabOrder = 1
OnClick = RadioGroup1Click
end
end