Главная страница
    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.56 MB
Время: 0.021 c
1-95384
chak
2002-07-15 11:42
2002.07.29
Создание


3-95181
Alecsandr
2002-07-05 17:07
2002.07.29
Использование DbRichEdit и БД Paradox FormattedMemo


14-95567
MaximatorVeter
2002-07-03 20:36
2002.07.29
От Спида каждый день умирает 8220 человек!


3-95260
ALex_Aby
2002-07-07 14:10
2002.07.29
Ищу компанент для доступа к данным без BDE ADO


3-95238
Pro
2002-07-08 21:40
2002.07.29
Накопительный отчет





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский