Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 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.006 c
1-95356
Filat
2002-07-17 21:20
2002.07.29
Не могу удалить каталог, что за дела.........


14-95489
raiks
2002-06-29 14:28
2002.07.29
Где взять api для написания прог для мобильника (siemens me45)?


14-95508
Merlin
2002-07-01 17:07
2002.07.29
Тест на сообразительность


14-95492
Fellomena
2002-06-27 12:11
2002.07.29
Vortex1 + Win2k -> Дикий гемор с 11-ым прерыванием!!!


3-95247
bobby_n
2002-07-07 22:11
2002.07.29
ADO и DBGrid





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский