Einzelnen Beitrag anzeigen

Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.017 Beiträge
 
Delphi 2009 Professional
 
#7

AW: "Automatischen" Zugriff auf die Registry unterbinden?

  Alt 26. Nov 2021, 19:29
Manchmal habe ich Strings gesehen, die so wirken, als wären Leerzeichen dazwischen (z.B. K E R N E L 3 2 . D L L)...
Das ist eben die Darstellung von UTF-16 als ANSI (CP1252), weil ANSI/ASCII-Nullzeichen dazwischen sind. Binärdateien als UTF-16 darstellen ergibt wenig Sinn, weil UTF-16 erfordert, dass wenn als höherwertiges Byte die Werte 0xD8-0xDB vorkommen, das übernächste Byte 0xDC-0xDF sein muss. In UCS2 sind beide Wertbereiche als höherwertiges Byte verboten. Ein beiden ist zudem verboten, dass das höherwertige Byte 0xFF und das niedrigwertige 0xFE ist.

siehe System.pas
Delphi-Quellcode:
  OlderLocaleOverrideKey = 'Software\Borland\Delphi\Locales'; // do not localize
  OldLocaleOverrideKey = 'Software\Borland\Locales'; // do not localize
  NewLocaleOverrideKey = 'Software\CodeGear\Locales'; // do not localize
  NewerLocaleOverrideKey = 'Software\Embarcadero\Locales'; // do not localize
für
Delphi-Quellcode:
function InternalGetLocaleOverride(AppName: string): string;
function GetLocaleOverride(const AppName: string): string;
Und kann man via procedure SetLocaleOverride(const NewPreferredLanguages: string); auch überschreiben/umgehen.
Kann es den Zugriff auch verhindern, wenn man es früh genug aufruft?
Janni
2005 PE, 2009 PA, XE2 PA
  Mit Zitat antworten Zitat