Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.09;
Скачать: CL | DM;

Вниз

Есть файл байтов (file of byte). Как сделать, чтобы массив данных   Найти похожие ветки 

 
SergeyG ©   (2006-03-23 12:18) [0]

Есть файл байтов (file of byte). Как сделать, чтобы массив данных из этого файла "оставить" в программе, а не подгружать во время работы программы?


 
Darkwing ©   (2006-03-23 12:30) [1]


var H: THandle;
H := CreateFile(PChar("Имя файла"),GENERIC_READ, FILE_SHARE_READ, nil, OPEN_EXISTING, nil, nil);
FileRead(H,MyArray,LengthOfMyArray));
CloseHandle(H)


 
SergeyG ©   (2006-03-23 13:38) [2]

Т.е. эту процедуру можно сделать в любое время при работе программы, а потом этот заполненный массив останется в теле программы? Или можно как-то этот массив сформировать во время разработки программы?


 
MBo ©   (2006-03-23 13:43) [3]

>Или можно как-то этот массив сформировать во время разработки программы?
Если массив маленький, можно константный массив использовать
const a:array[1..3] of byte = (1,2,3);
Если большой - можно в ресурс засунуть.


 
SergeyG ©   (2006-03-23 13:46) [4]

Вручную набивать килобайт тоскливо. А что такое и как "засунуть в ресурс"?


 
MBo ©   (2006-03-23 14:02) [5]

Пусть файл данных называется array.dat
Пишешь текстовый файл array.rc, содержащий строчку
ARR RT_RCDATA "array.dat"
и запускаешь компилятор ресурсов
brcc32 array.rc
Получается файл array.res

В программе

$R *.dfm}
{$R array.res}

procedure TForm4.FormCreate(Sender: TObject);
var
 Res:TResourceStream;
begin
 Res:=TResourceStream.Create(HInstance, "ARR","RT_RCDATA");
 SetLength(arr, Res.Size);
 Res.Read(arr[0], Res.Size);
 Res.Free;
 Caption:=IntToStr(arr[0]);
end;


 
MBo ©   (2006-03-23 14:03) [6]

здесь arr- динамический массив

 arr: array of Byte;


 
SergeyG ©   (2006-03-23 15:11) [7]

Спасибо, буду разбираться.


 
Leonid Troyanovsky ©   (2006-03-23 16:35) [8]


> MBo ©   (23.03.06 14:02) [5]

> ARR RT_RCDATA "array.dat"


ARR RCDATA "array.dat"

--
Regards, LVT.



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

Текущий архив: 2006.04.09;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
2-1143211969
JohnKorsh
2006-03-24 17:52
2006.04.09
Могут ли D5 и D7 сосуществовать на одном копьютере?


15-1142584181
Volf_555
2006-03-17 11:29
2006.04.09
Какую посоветуете программу для написания программ для мобильника


1-1141567051
X9
2006-03-05 16:57
2006.04.09
Узнать доступность MSXML


15-1142531039
Kerk
2006-03-16 20:43
2006.04.09
Перевод :)


1-1141772515
DiMonstr
2006-03-08 02:01
2006.04.09
Запуск второй копии программы