Главная страница
    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.007 c
3-95205
RDA
2002-07-06 20:05
2002.07.29
Динамический запрос


4-95604
Yerba
2002-05-20 23:46
2002.07.29
Bitmap -> Icon


14-95517
Gayrus
2002-06-30 07:17
2002.07.29
Delphi компоненты


3-95256
Nikolka
2002-07-09 11:33
2002.07.29
Не запускается приложение с локальной БД


3-95250
ioRaptor
2002-07-08 20:39
2002.07.29
Как занести jpeg картинку в blob поле (InterBase)





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