Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   TRegistry: Unterschied zwischen Konsole und GUI? (https://www.delphipraxis.net/169313-tregistry-unterschied-zwischen-konsole-und-gui.html)

p80286 11. Jul 2012 21:49

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Zitat:

Zitat von DeddyH (Beitrag 1174341)
Tut auch nicht, nur als Standard-VCL-Programm. Komisch, das. Ich probier das jetzt mal mit Umkodieren, weil es mich interessiert.

[edit] Jetzt wird es ganz ulkig: KeyExists liefert auch unter VCL false, ausgelesen wird trotzdem der richtige Wert :shock: [/edit]

[edit2] Logisch, das müsste ja auch ValueExists heißen :oops: [/edit2]

Das hätte ich jetzt gerne mal langsam und zum mitschreiben.
solange Du Dich auf 0-9, A-Z und a-z beschränkst ist OEM mit ANSI gleich. Erst bei den Umlauten und den Sonderzeichen wird es interessant. "_" ist auf jeden Fall in beiden Fällen das gleiche.

Gruß
K-H

DeddyH 12. Jul 2012 07:02

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Zitat:

Zitat von p80286 (Beitrag 1174373)
solange Du Dich auf 0-9, A-Z und a-z beschränkst ist OEM mit ANSI gleich. Erst bei den Umlauten und den Sonderzeichen wird es interessant. "_" ist auf jeden Fall in beiden Fällen das gleiche.

Der Auffassung war ich bislang auch. Fakt scheint aber zu sein, dass der Unterstrich den Ausschlag gibt. Eine vorherige Abfrage mit ValueExists ergibt auch noch true, erst das ReadString liefert mir bei einem NonVCL-Programm kein Ergebnis. Lese ich aber im selben Schlüssel einen anderen Wert ohne Unterstrich im Namen aus, funktioniert das wie gewohnt. Woran genau das nun liegt, habe ich nicht weiter verfolgt.

Ralf Kaiser 12. Jul 2012 08:39

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Zitat:

Zitat von DeddyH (Beitrag 1174394)
Lese ich aber im selben Schlüssel einen anderen Wert ohne Unterstrich im Namen aus, funktioniert das wie gewohnt. Woran genau das nun liegt, habe ich nicht weiter verfolgt.

Hast du mal versucht in den beiden Varianten einen Wert mit einem Unterstrich anzulegen und dann mit RegEdit zu vergleichen ob da ein Unterschied besteht?

DeddyH 12. Jul 2012 09:05

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Funktioniert, ob Konsole oder GUI:
Delphi-Quellcode:
procedure TestKey;
const
  KeyName = '\Software\Test\Test';
var
  Reg: TRegistry;
begin
  Reg := TRegistry.Create;
  try
    Reg.RootKey := HKEY_CURRENT_USER;
    if Reg.OpenKey(KeyName, true) then
      try
        Reg.WriteString('A_B', 'Ohne GUI');//oder eben "Mit GUI"
      finally
        Reg.CloseKey;
      end;
  finally
    Reg.Free;
  end;
end;
OK, anderer RootKey, aber daran wird es wohl kaum liegen.

CCRDude 12. Jul 2012 11:01

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Ganz oben stand schon ein Hinweis... wie sieht's denn mit Manifesten (re Virtualisierungsstatus) und Elevation aus?

DeddyH 12. Jul 2012 11:05

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Außer dem Standard-Manifest, das Delphi sowieso einbindet, ist nichts weiter vorhanden. Aber wie bereits erwähnt ist das Problem nur noch ein akademisches, da ich nun doch eine VCL-Anwendung daraus gemacht habe.

jaenicke 12. Jul 2012 11:31

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Wie schon geschrieben:
Wenn du es noch schnell und einfach herausfinden möchtest woran es denn nun lag, brauchst du nur den Process Monitor zu starten und den Filter auf "Processname is DeineExe.exe" zu setzen. Da so viele Registryzugriffe an der Stelle ja nicht passieren, findet man die Stelle im Log auch leicht.

himitsu 12. Jul 2012 11:56

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Wobei die VCL auch so manche Dinge initialisiert, vorallem irgendwelches OLE-Zeugs und sonstewas.

p80286 12. Jul 2012 15:36

AW: TRegistry: Unterschied zwischen Konsole und GUI?
 
Ich hab mir mal ein paar Fonts in Ansi/OEM angeschaut, Zum einen haben verschiedene Fonts den Unterstrich (bzw. etwas das so aussieht) mehrfach vorhanden, zum anderen varieren die Positionen auch noch. Zuverlässig ist da nur x5F.
Ein Hoch auf dieses codepage Wirrwar und das was man sieht.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:06 Uhr.
Seite 2 von 2     12   

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