PAGUE 6 MESES
LEVE 12 MESES
GARANTIR DESCONTO

Fórum Varrer Ler Todos os Regitros Windows #471857

03/03/2014

0

Pessoal, eu preciso localizar determinadas chaves no Registro do Windows, porém não tenho o endereço delas. Isso significa que vou Varrer todos as chaves existentes até encontrar os valores que preciso.
Para isso iniciei com uma função que achei noutro fórum. De início funciona, mas no recursivo seguinte não funciona.
Eu Insiro o nome do Root e consigo pegar as primeiras pastas da hierarquia de pastas. Então, a cada pasta que encontro eu uso a própria função recursivamente para ler o conteúdo da pasta. Assim deveria ir até descer ao ultimo nível de pastas.

Segue a função. Espero que possam me ajudar.

uses
Registry


procedure TForm3.GetRegistryList(const aRoot: HKEY; const aPath: string; const aStrings: TStrings);
var
vList: TStringList;
vIEntry: Integer;
vReg : TRegistry;
begin
vReg := TRegistry.Create;
vList := TStringList.Create;
try
vReg.RootKey := aRoot;
vReg.OpenKey(aPath, True);
vReg.GetKeyNames(vList);
for vIEntry := 0 to vList.Count-1 do begin
aStrings.Add(aPath + ''\'' + vList[vIEntry]);
GetRegistryList(aRoot, aPath + ''\'' + vList[vIEntry], aStrings);
end;
finally
FreeAndNil(vReg);
FreeAndNil(vList);
end;
end;
Aesmo

Aesmo

Responder

Posts

14/03/2014

Aesmo

Ninguem sabe? =\
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar