Ir para conteúdo
Faça parte da equipe! (2024) ×

Listar Programas Instalados


NoSlake
 Compartilhar

Posts Recomendados

Uma função que achei muito legal e queria compartilhar com vocês.

 

Primeiro, vá nas uses e declare Registry;

Adicione um ListView (aba Win) e um Button (Stardard);

 

Dê dois cliques no botão, apague o begin e o end e adicione:


const
UNINST_PATH = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall';
var
Registro: TRegistry;
Chaves: TStringList;
xListItem: TlistItem;
I: integer;
xNomeSoftware, xCaminhoRemover: string;
begin
ListView1.ViewStyle := vsReport;
ListView1.Columns.add;
ListView1.Columns.add;
ListView1.Columns[0].caption := 'Nome do Programa';
ListView1.Columns[1].caption := 'Caminho pra Remover';
ListView1.Columns[0].Width := 300;
ListView1.Columns[1].Width := 300;

Registro := TRegistry.Create;
with Registro do
try
with ListView1.Items do
try
BeginUpdate;
Clear;
RootKey := HKEY_LOCAL_MACHINE;
if OpenKeyReadOnly(UNINST_PATH) then
begin
Chaves := TStringList.Create;
try
GetKeyNames(Chaves);
CloseKey;
for I := 0 to Chaves.Count - 1 do
if OpenKeyReadOnly(Format('%s\%s', [uNINST_PATH, Chaves[i]])) then
try
xNomeSoftware := ReadString('DisplayName');
xCaminhoRemover := ReadString('UninstallString');
if xNomeSoftware <> '' then
begin
xListItem := Add;
xListItem.Caption := xNomeSoftware;
xListItem.subitems.Add(xCaminhoRemover);
end;
finally
CloseKey;
end;
finally
Chaves.Free;
end;
end;
finally
ListView1.AlphaSort;
EndUpdate;
end;
finally
CloseKey;
Free;
end;
end;

 

Resultado:

WesleyListaSofwares01.jpg

Possivelmente, logo eu adiciono alguns comentários pra mostrar pra vocês como funciona.

 

Créditos: Wesley Yamazack - Devmedia

Membro - Bronze - Geek - Bronze - Tech - Mod - Coord - Co-Admin - Platinum

Link para o comentário
Compartilhar em outros sites

  • 1 ano atrás...
Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.