Lista de Programas Instalados
Veja neste artigo como podemos obter a lista de programas instalados no seu computador.
Olá galera, vamos a este artigo onde vou mostrar como podemos obter a lista de todos os softwares instalados no computador.
Para isso vamos precisar de um TButton e um TListView.
Inicialmente vamos precisar declarar Uses em Registry.
Não se preocupe com a configuração do TListView, pois isso será feito através do código listado logo abaixo.
No evento onClick do TButton implemente o seguinte código.
Listagem 1: Implementação no onClick do TButton
Veja o Resultado

Fico por aqui e até o próximo artigo
Um abraço
Wesley Y
www.lithic.com.br
Para isso vamos precisar de um TButton e um TListView.
Inicialmente vamos precisar declarar Uses em Registry.
Não se preocupe com a configuração do TListView, pois isso será feito através do código listado logo abaixo.
No evento onClick do TButton implemente o seguinte código.
Listagem 1: Implementação no onClick do TButton
procedure TForm1.Button1Click(Sender: TObject);
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;
Veja o Resultado

Fico por aqui e até o próximo artigo
Um abraço
Wesley Y
www.lithic.com.br


Suellen Ap Colangelo
em 27/2/2012 15:45 - Responder
No caso seriam apenas os programas do windows instalados?
Para criar uma entrada no registro que o painel de controle ache e permita desinstalar o programa apontando para um uninstall qual seria o caminho no Reg?
Para criar uma entrada no registro que o painel de controle ache e permita desinstalar o programa apontando para um uninstall qual seria o caminho no Reg?
em 27/2/2012 15:45 - Responder

[Comentário do autor]
Wesley Yamazack
em 1/3/2012 22:29 - Responder
Wesley Yamazack
Olá Suelle, seria justamente os programas instalados e registrados no Windows.
Para outros programas dai teríamos que ver melhor o registro, qual o SO e dai estudar para ver onde cada programa fica "registrado".
Blz?
Obrigado pelo comentário, um abraço.
Para outros programas dai teríamos que ver melhor o registro, qual o SO e dai estudar para ver onde cada programa fica "registrado".
Blz?
Obrigado pelo comentário, um abraço.
em 1/3/2012 22:29 - Responder
Você está em:
canal Delphi
Wesley Yamazack
Space do autor
Graduado em Analise de Sistemas, no ramo de desenvolvimento há mais de 6 anos, onde atuou em empresas de diversos seguimentos como financeiro, comercial, estacionamento, etc. Atualmente analista desenvolvedor terceirizado da Marinha do Brasil, além de desenvolver projetos através da minha empresa Li...
Space do autor




1
0
