Warum ist das:
Delphi-Quellcode:
while Keys.Count>0 do
if Reg.OpenKey(Keys[0]+'\Software\Microsoft\Windows\CurrentVersion\Run',False) then
begin
Reg.GetValueNames(List);
if List.Count>0 then
for i:=0 to List.Count-1 do
NewItem(List[i],Reg.ReadString(List[i]),'HKEY_USERS\'+Keys[0]);
List.Clear;
Keys.Delete(0);
Reg.CloseKey;
end;
keine for-Schleife? Du weißt doch, wie viele Eintrage in der Liste
Keys sind.
Und wie erstellst du das TRegistry-Objekt? Ich würde es mal mit KEY_READ versuchen als Parameter der Create-Methode.