PDA

View Full Version : نرم افزار های نصب شده



شفیعی
جمعه 04 خرداد 1386, 06:37 صبح
سلام
می خواهیم برنامه بنویسیم که لیست نرم افزار های نصب شده در سیستم را نمایش دهد چطور می توان این لیست را بدست آورد

Hamid_PaK
جمعه 04 خرداد 1386, 07:04 صبح
از EnumRegKey و آدرس نصب برنامه ها در رجیستری استفاده کنید.

\\\Registry\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Uninstall\

یا حق ...

MNosouhi
جمعه 04 خرداد 1386, 09:14 صبح
Procedure ListInstalledProg(ListBox:Tstrings);
var
MyList: TStringList;
MyRegistry: TRegistry;
i: Integer;
Str: string;
//Res:TStrings;
begin
//res:=TStrings.Create;
MyRegistry:=TRegistry.Create;
MyList:=TStringList.Create;
with MyRegistry do
begin
RootKey:=HKEY_LOCAL_MACHINE;
if OpenKey(
'Software\Microsoft\Windows\CurrentVersion\Uninsta ll',
False)=True then GetKeyNames(MyList);
CloseKey;

for i:=0 to MyList.Count-1 do
begin
RootKey:=HKEY_LOCAL_MACHINE;
OpenKey(
'Software\Microsoft\Windows\CurrentVersion\Uninsta ll\'+
MyList[i],
False);
Str:=ReadString('DisplayName');
if Str<>'' then
ListBox.Add(ReadString('DisplayName'));
CloseKey;
end;
end;
end;