Verfasst: 16.03.2007 19:09
Hallo jpd,
schön, daß es bei Dir läuft.
Wenn Du also eine schon vorhandene IP-Adresse aus der Registry auslesen und um eine zweite ergänzen möchtest, solltest Du die beiden sicherheitshalber durch ein Linefeed (#LF$) trennen und mit meiner Erweiterung in ein Null-Byte umwandeln lassen:
schön, daß es bei Dir läuft.

Es ist nicht unbedingt nötig, die Unicode-Compileroption einzuschalten. Ich habe beide Möglichkeiten getestet. Wie ts-soft in einem vorherigen Posting betont hat, werden sowieso alle Registry-Einträge von den Win-API Registry-Funktionen automatisch in Unicode umgesetzt und in der Registry eingetragen...jpd hat geschrieben: und mit eingeschalteten unicode (compiler option)
Das Austauschen der Linefeeds (#LF$) gegen Null-Bytes ist optional und deshalb auch nicht ursprünglich in ts-softs Prozedur Reg_WriteMultiLineString() enthalten. Dies ist also kein Fehler. Es könnte aber sein, daß Windows-Betriebssystemfunktionen, die Deine IP-Adressen auslesen sollen, diese Null-Bytes als Trennzeichen benötigen. Microsoft selbst gibt dazu ja im TechNet (siehe meine obigen Zitate) widersprüchliche Auskünfte.jpd hat geschrieben: ohne "Null" zeichen auszutauschen.
Wenn Du also eine schon vorhandene IP-Adresse aus der Registry auslesen und um eine zweite ergänzen möchtest, solltest Du die beiden sicherheitshalber durch ein Linefeed (#LF$) trennen und mit meiner Erweiterung in ein Null-Byte umwandeln lassen:
Code: Alles auswählen
Reg_WriteMultiLineString(#HKEY_CURRENT_USER, "Test", "Gateway", ip_val + #LF$ + "192.168.0.2")