Re[2]: WideString и реестр
От: nim2006  
Дата: 10.10.06 21:41
Оценка:
Здравствуйте, FDSC, Вы писали:

FDS>Здравствуйте, nim2006, Вы писали:


N>>Hi!

N>>Есть библиотека стороннего разработчика

N>>
N>>ILibrary = interface(IUnknown)
N>>    ['{E1A1E77A-07A2-452D-BB5D-FAC41207B23A}']
N>>    function  Get(out key: WideString): HResult; stdcall;
N>>    function  Read(var key: WideString; out OutParam: variant): HResult; stdcall;
N>>  end;
N>>


N>>Моя задача получить с помощью функции Get строку один раз а в дальнейшем использовать функцию Read для получения параметров. Для этого в функцию Read передаеться строка полученная функцией Get. В key сохранены бинарные данные. Как можно сохранить key в реестре? А потом считать его от туда?


FDS>Сохраняй её не как строку, а как данные. Кто мешает получить указатель на первый байт и представить строку в другом виде.

Сохранять как данные не получилось. Точнее сохранять получаеться а вот считать нет.

FDS>Если нужно сохранить именно Wide-строку, см. функцию RegSetValueExW. Кажется я в своём FDSCInformer сохранял строки как Wide, посмотри здесь, нужен модуль uRegistry.pas.


Я сделал несколько дркгим методом. Преобразование строки в массив типа WideChar и запись массива методом WriteBinary
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.