Форум: "Система";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];
ВнизTRegistry Найти похожие ветки
← →
МИФИст (2002-05-08 01:39) [0]Подскажите, пожалуйста, как почитать параметр типа REG_MULTI_SZ, ключ я открыл, параметр "Export" в ключе проверяю он существует, а вот MyReg.ReadString("Export") ругается, что делать?
← →
Cobalt (2002-05-08 09:51) [1]TRegistry.ReadBinaryData
← →
МИФИст (2002-05-08 14:33) [2]Можно ли использовать вместе с TRegistry после открытия ключя, для чтения параметра использовать RegQueryValueEx? У него есть параметр lpType, который может быть равен REG_MULTI_SZ, только я не понял куда сохраняется считанные данные, какого они типа и как их преобразовать в string.
← →
Cobalt (2002-05-08 21:03) [3]Знаете, возникает такой вопрос : А откуда вы узнали о таком типе данных? В Дельфёвой справке я такого не нашел.
Такое есть только в справке по WinApi (RegQueryValueEx) - но это то вы нашли, даже увидели, что есть такой тип - REG_MULTI_SZ, вот только ?поленились посмотреть чуть дальше? иначе бы наверняка спросили бы, что означает следующее:
REG_MULTI_SZ An array of null-terminated strings, terminated by two null characters.
А это значит, что в данном участке памяти находится несколько строк, располагающихся друг за другом, конец строки обозначает 0-ой символ, а окончание - два идущих подряд 0-ых символа.
Типа такого:
[Первая строка<0>Вторая строка<0>Третья строка<0><0>]
<0> - означает один символ, #0, или Char(0).
P.S. Необязательно переходить на RegQueryValueEx, использование чистого WinApi оправдано только при необходимости делать что-то очень быстро, или если вас не устраивает реализация данных функций компонентом/классом, как то ограниченная функциональность, глюкавость и т.п.
← →
МИФИст (2002-05-08 22:26) [4]Мне потом нужно будет часть программы перенести на Visual C, я уже разобрался как читать с помощью RegQueryValueEx, всё оказалось очень просто, нужно было просто перед аргументами ставить @ и всё.
var AdapKey: HKey;
lpData: array[0..1000] of Char;
lpType,lpcbData: LongInt;
...
RegQueryValueEx(AdapKey,"Export",nil,@lpType,@lpData,@lpcbData);
...
Form1.Memo1.Lines.Add("Значение :"+lpData);
>Cobalt с адаптерами из Packet32.dll не работал?
← →
Cobalt (2002-05-10 09:26) [5]>Cobalt с адаптерами из Packet32.dll не работал?
Нет.
Страницы: 1 вся ветка
Форум: "Система";
Текущий архив: 2002.07.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c