Re: ascii -> hex-wandler und Reg_Binary eintrag
From: Peter Götz (gssg_nospam_at_t-online.de)
Date: 09/28/04
- Next message: Herfried K. Wagner [MVP]: "Re: Suche nach Dateien in (unter)verzeichnissen"
- Previous message: Peter Götz: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- In reply to: Batz, Sebastian: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- Next in thread: Peter Götz: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- Messages sorted by: [ date ] [ thread ]
Date: Tue, 28 Sep 2004 10:41:13 +0200
Hallo Sebastian,
> ok, das funzt,
Na, aber nicht wirklich.
> aber ich habe bemerkt, dass wenn man diesen wert in die reg
> schreibt, das dann die hex-werte für "umgewandelten hex-werte" schreibt.
s. mein anderes Posting.
Du solltest Dir erst mal den Unterschied zwischen numerischen Datentypen wie
Byte, Integer usw. und Strings klar machen.
Der nächste Schritt wäre dann zu verstehen wie man Ganzzahlen im
Dezimalsystem oder eben im Hexadezimalsystem darstellt.
Bei der Umwandlung einer Ganzzahl mit der VB-Funktion Hex$() bekommst Du
keine Zahl, also keinen numerischen Datentyp wie Byte, Integer oder Long
zurück, sondern schlicht und einfach einen String, welcher die an Hex$()
übergebene Zahl (Typ Byte, Integer oder Long) als hexadezimale Darstellung
eben dieser Zahl enthält.
>
> mit dem befehl
> RegSetValue HKEY_CURRENT_USER, DestinationRegSubKey_UserName,
> DestinationRegKeyName, REG_BINARY, OutputText, Len(OutputText)
>
> wird der wert in die reggeschriebn.
Damit schreibst Du die ASCII-Werte der in dem String OutputText enthaltenen
Zeichen in die Registry. Da dieser String aber schon ein hexadezimales
Abbild der ursprünglichen ASCII-Werte enthält, ist das nicht wirklich das,
was Du in der Registry speichern wolltest.
> dabei wird das automatisch in hex
> umgewandelt.
Da wird gar nichts automatisch umgewandelt.
Ein Wert vom Typ Binary ist nichts anderes als eine Reihe von Bytewerten. Ob
Du diese Bytewerte zum Betrachten (dazu musst Du sie in Strings umwandeln)
nun als dezimale oder hexadezimale Zahlenabbildungen darstellst, ist völlig
egal. Auf den numerischen Wert des Bytes kommt es an und der ist immer der
selbe, egal ob Du in als dezimales Zahlenabbild oder als hexadezimales
Zahlenabbild darstellst.
Wenn Du Binärwerte in der Registry mit RegEDT32 oder mit RegEdit anschaust,
dann ist das was Du siehst immer ein String. Auch die hexadezimale Anzeige
von Binärwerten in RegEdit ist ein String. Hinter diesen einzelnen
hexadezimalen Zahlendarstellungen stehen numerische Werte vom Typ Byte.
> das heißt, das ich mir den ascii - hex umwandlungsschritt sparen kann, nur
so isses.
> muss zwischen jedes ascii zeichen dann noch ein "NUL" wert geschrieben
> werden und das ist jetzt mein problem.
Unsinn!
Du willst doch einfach nur die ASCII-Werte der Zeichen, die z.B. einen
Benutzernamen darstellen in der Registry speichern. Also pack diese
Ascii-Werte der Reihe nach in ein ByteArray und dieses kannst Du dann, wie
ich Dir schon im anderen Posting geschrieben habe in der Registry speichern.
Die Leerzeichen, welche Du in RegEDT32 bzw. in RegEdit beim Betrachten von
Binärdaten zwischen den einzelnen hexadezimalen Zahlendarstellungen siehst,
fügen RegEDT32 bzw. RegEdit bei der Darstellung der Werte am Bildschirm ein,
damit das ganze besser lesbar wird. In der Registry selbst (also auf der
Platte) stehen zwischen den einzelnen Bytewerten keine Leerzeichen und schon
gar keine Null-Werte, was wiederum ganz was anderes ist als ein Leerzeichen
oder ein leerer String.
Ich denke, Du solltest Dich erst mal gründlich mit Grundlagen wie Datentypen
und Zahlensystemen vertraut machen, bevor Du mehr oder weniger blind
irgendwelchen, wahrscheinlich gar nicht verstandenen Code tippst.
Gruß aus St.Georgen
Peter Götz
www.gssg.de (mit VB-Tips u. Beispielprogrammen)
- Next message: Herfried K. Wagner [MVP]: "Re: Suche nach Dateien in (unter)verzeichnissen"
- Previous message: Peter Götz: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- In reply to: Batz, Sebastian: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- Next in thread: Peter Götz: "Re: ascii -> hex-wandler und Reg_Binary eintrag"
- Messages sorted by: [ date ] [ thread ]
Relevant Pages
|