AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TRegIniFile vs. TRegistry unter Vista...

Ein Thema von ralfiii · begonnen am 10. Jan 2008 · letzter Beitrag vom 10. Jan 2008
Antwort Antwort
Benutzerbild von ralfiii
ralfiii

Registriert seit: 30. Mai 2007
489 Beiträge
 
Delphi 2010 Professional
 
#1

TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 14:43
Ich muss was unter HKLM schreiben.
Mach ich das mit
Delphi-Quellcode:
     with TRegistry.Create do
     try
        RootKey:=HKEY_LOCAL_MACHINE;
        Access:=KEY_READ or KEY_WRITE;
        WriteString(ediSection.Text, ediValueName.Text, ediWriteContent.Text);
     finally
            Free;
     end;
lauft's problemlos.
Nehm ich statt TRegistry TRegIniFile kracht's.
Exception "Erzeugung von Schlüssel \Software\Darwin\ misslungen"
ReadString anstelle von WriteString geht. Und unter WinXP läuft's auch.
Starte ich die Anwendung explizit mit Admin-rechten geht's doch.

Hilfe?!?

(Das ganze unter D2006 in einer App mit asInvoker-Manifest)
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#2

Re: TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 14:49
Bist Du sicher, dass der Key mit TRegistry auch angelegt wird?
Eigentlich wird die Registry erst geschrieben mit TRegistry.Close

Unter Vista hat nur noch ein Admin die Rechte, in HKLM zu schreiben.
Lesen darf (glaube ich) jeder aus HKLM.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von ralfiii
ralfiii

Registriert seit: 30. Mai 2007
489 Beiträge
 
Delphi 2010 Professional
 
#3

Re: TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 15:09
Zitat von RavenIV:
Bist Du sicher, dass der Key mit TRegistry auch angelegt wird?
Eigentlich wird die Registry erst geschrieben mit TRegistry.Close

Unter Vista hat nur noch ein Admin die Rechte, in HKLM zu schreiben.
Lesen darf (glaube ich) jeder aus HKLM.
Ja, hab ich gecheckt.
Unglaublich aber der Fehler liegt in den Borland-Sourcen.

In TRegIniFile.WriteString wird CreateKey aufgerufen und dort steht
Delphi-Quellcode:
  Result := RegCreateKeyEx(GetBaseKey(Relative), PChar(S), 0, nil,
    REG_OPTION_NON_VOLATILE, KEY_ALL_ACCESS, nil, TempKey, @Disposition) = ERROR_SUCCESS;
und Kay_All_Access hat diese Sache mit Create_Link dabei, und die geht meistns nicht.
Schwachsinn, nicht mal bei Delphi2007 haben sie das ausgebessert, obwohl die Version Vista-Kompatibel sein sollte.
  Mit Zitat antworten Zitat
Benutzerbild von RavenIV
RavenIV

Registriert seit: 12. Jan 2005
Ort: Waldshut-Tiengen
2.875 Beiträge
 
Delphi 2007 Enterprise
 
#4

Re: TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 15:49
Dann verwende doch einfach TRegistry und sei glücklich
Dort geht es ja.

Nur so am Rande: das CloseKey solltest Du trotzdem noch dazuschreiben.
Klaus E.
Linux - das längste Text-Adventure aller Zeiten...
Wer nie Linux mit dem vi konfiguriert hat, der hat am Leben vorbei geklickt.
  Mit Zitat antworten Zitat
Benutzerbild von wicht
wicht

Registriert seit: 15. Jan 2006
Ort: Das schöne Enger nahe Bielefeld
809 Beiträge
 
Delphi XE Professional
 
#5

Re: TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 16:49
Zitat:
Unter Vista hat nur noch ein Admin die Rechte, in HKLM zu schreiben.
Lesen darf (glaube ich) jeder aus HKLM.
Unter keinem NT darf ein Benutzer da rein schreiben (ausser, man gibt ihm die Rechte dazu). Nur der Vollständigkeit halber...
http://streamwriter.org

"I make hits. Not the public. I tell the DJ’s what to play. Understand?"
  Mit Zitat antworten Zitat
Benutzerbild von ralfiii
ralfiii

Registriert seit: 30. Mai 2007
489 Beiträge
 
Delphi 2010 Professional
 
#6

Re: TRegIniFile vs. TRegistry unter Vista...

  Alt 10. Jan 2008, 17:53
Zitat von wicht:
Unter keinem NT darf ein Benutzer da rein schreiben (ausser, man gibt ihm die Rechte dazu). Nur der Vollständigkeit halber...
Regulär nicht, aber ich hab bei der Installation bei dem Verzeichnis Rechte auf authusers-modify gesetzt.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz