灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:3966回复:0

delphi操作注册表读取软件列表代码

楼主#
更多 发布于:2012-09-08 13:04

unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,registry, StdCtrls;
type
TForm1 = class(TForm)
    Button1: TButton;
    ListBox1: TListBox;
    procedure Button1Click(Sender: TObject);
private
    { Private declarations }
public
    { Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
reg:TRegistry;
myList:TStringList;
i:integer;
curkey,SNametring;
begin
reg:=TRegistry.Create;
MyList:=TStringList.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
if reg.OpenKey(SoftwareMicrosoftWindowsCurrentVersionuninstall,False) then
Begin
    reg.GetKeyNames(myList);
    curkey:=reg.CurrentPath;
    reg.CloseKey;
    for i:=0 to MyList.Count-1 do
    if reg.OpenKey(curKey++MyList.Strings,False) then
    Begin
      if reg.ValueExists(DisplayName) then
        Sname:=reg.ReadString(DisplayName)
      else
        SName:=MyList.Strings;
      if reg.ValueExists(DisplayVersion) then
        Sname:=Sname+ 版本:+reg.ReadString(DisplayVersion)
      else
        SName:=MyList.Strings;
      Listbox1.Items.Add(SName);
      reg.CloseKey;
    end;
end;
end;
end.


喜欢0 评分0
游客

返回顶部