Einzelnen Beitrag anzeigen

Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

Re: Hintergrundbild ermitteln

  Alt 5. Feb 2004, 22:32
Besser ist aber das:
Delphi-Quellcode:
uses
  Registry;

function GetWallpaper: String;
var
  s: String;
  regist: TRegistry;
begin
  s := '';
  // wir wollen nur lesen
  regist:=TRegistry.Create(KEY_READ);
  try
    regist.RootKey:=HKEY_CURRENT_USER;
    // nur weitermachen, wenn Schlüssel geöffnet werden konnte
    // except hier unnötig
    if regist.OpenKey('Control Panel\Desktop\', false) then
      s := regist.ReadString('WallPaper');
  finally // regist Objekt auf alle Fälle wieder freigeben
    FreeAndNil(regist);
  end;
  result := s;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Caption := GetWallpaper();
end;
Das except ist unnötig, OpenKey liefert True zurück, wenn es geklappt hat. Und in Helpliners Code wird bei einem Fehler das TRegistry Objekt nicht wieder freigegeben.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat