Binary data is a bit harder to browse in the registry, so one may want to store a string as a binary data type to make it harder to see. That said, does understand this:

$ = WriteValue ("HKEY_LOCAL_MACHINE\SYSTEM", "Test", "text string", REG_FULL_RESOURCE_DESCRIPTOR)
? ReadValue ("HKEY_LOCAL_MACHINE\SYSTEM", "Test")

The above is able to return the text string fine.

$ = WriteValue ("HKEY_LOCAL_MACHINE\SYSTEM", "Test", "text string", REG_BINARY)
? ReadValue ("HKEY_LOCAL_MACHINE\SYSTEM", "Test")

When using the REG_BINARY type above, the string appears as hex in the registry and is returned by KiXtart as a hex string.

Is KiXtart modfying the data on write when the type is specified as REG_BINARY?