Einzelnen Beitrag anzeigen

youuu

Registriert seit: 2. Sep 2008
Ort: Kleve
822 Beiträge
 
Delphi 2010 Professional
 
#1

Programmpfad Firefox

  Alt 6. Aug 2010, 23:09
Hi,

ich vrsuch den Programpfad von Firefox so zu ermittel:

Delphi-Quellcode:
procedure TFormMain.Button2Click(Sender: TObject);
const
  UNINST_PATH = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall';
var
  Reg: TRegistry;
  SubKeys: TStringList;
  i: integer;
  sDisplayName, sUninstallString: string;
begin
  Reg := TRegistry.Create;
  with Reg do
    try
      RootKey := HKEY_LOCAL_MACHINE;
      if OpenKeyReadOnly(UNINST_PATH) then
      begin
        SubKeys := TStringList.Create;
        try
          GetKeyNames(SubKeys);
          CloseKey;
          for i := 0 to subKeys.Count - 1 do
            if OpenKeyReadOnly(Format('%s\%s', [UNINST_PATH, SubKeys[i]])) then
              try
                sDisplayName := Reg.ReadString('Comments');
                sUninstallString := Reg.ReadString('InstallLocation');
                if sDisplayName <> 'then
                begin
                  if sDisplayName = 'Mozilla Firefoxthen
                  begin
                    showmessage(sUninstallString+'\'+sDisplayName);
                  end;
                end;
              finally
                Reg.CloseKey;
              end;
        finally
          SubKeys.Free;
        end;
      end;
    finally
      CloseKey;
      Free;
    end;
end;
abgeleitet von hier: hier

Bekomm allerdings eine Fehlermeldung:
access violation at 0x77cd4eec: write of address 0x00030ffc

Fehler tritt nur auf bei  showmessage(sUninstallString+'\'+sDisplayName); Wie kann bei "Shomessage" denn eine access auftreten?
Steven
  Mit Zitat antworten Zitat