Вниз
Скачать: CL | DM;

Запись в реестр динамического массива   Найти похожие ветки 

 
HPR ©   (2004-04-13 22:08) [0]

У меня есть массив:

A: array of SmallInt;

и его нужно записать в реестр и в последующем считать. Как вы это делаете? Я попробовал с помощью TRegistry.WriteBinaryData, вроде что-то записалось :) Но считывается это дело потом неправильно - мусор какой-то.


 
Anatoly Podgoretsky ©   (2004-04-13 22:11) [1]

Что реестр это свалка, что бы писать туда массивы?
А так метод записи правильный, видимо у тебя ошибка в программе.


 
HPR ©   (2004-04-13 22:23) [2]

Да массивчик небольшой, максимум 30 байт. А в чем ошибка? Вот код привожу:

var
Reg: TRegIniFile;

...........
...........
Reg.WriteBinaryData("Array",A,SizeOf(SmallInt)*Length(A));

запись то вроде работает... А вот чтение:

SetLength(A,Reg.GetDataSize("Array") div 2);
ReadBinaryData("Array",A,Reg.GetDataSize("Array"));

И вот после ReadBinaryData в A записываются либо нули, либо мусор какой-то...


 
Anatoly Podgoretsky ©   (2004-04-13 22:35) [3]

a[0]


 
HPR ©   (2004-04-14 00:09) [4]

Не понял:

"a[0]"


 
Anatoly Podgoretsky ©   (2004-04-14 00:42) [5]

Без кавычек, получится адрес первого элемента массива, что и требуется для функции.

ЗЫ: только для одномерных массивов.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
7-1078760207
Роман
2004-03-08 18:36
2004.05.02
Com-порт против NT Server


3-1080814223
wer
2004-04-01 14:10
2004.05.02
поиск


6-1078420166
Delpher_Gray
2004-03-04 20:09
2004.05.02
Склеивание пакетов, избежание при этом ошибок


14-1081086968
Piter
2004-04-04 17:56
2004.05.02
FAQ: PChar и String


1-1081852453
Fast
2004-04-13 14:34
2004.05.02
При уничтожении класса выпадаю в ошибку почему?




   Наверх