قمت بانشاء مصفوفه داخل التطبيق و هي تعمل
ولكن فوجات بن المصفوفه يتم تخزينها في الميمري رام فمثلا هذا الكود
كود :
type ArrayIndex = 0..99999999;
TByteArray = array[ArrayIndex] of Byte;
PByteArray = ^TByteArray;
procedure TForm1.GetDataAll;
var
BufData : PByteArray;
begin
GetMem(BufData, 1000000000);
end;
بعد املا البيانات يتم تخزينها في الرام
فهل يوجد حل لوضعها في الهارد
او ضغطها
و بارك الله فيكم
(21-02-2016, 02:00 PM)B.M.AbdelAziZ كتب : وعليكم السلام ورحمة الله
يمكن انشاء ملف بالقرص واستخدامه لكن ما المشكل ؟ هل تخشى من عدم توفر ذاكر حية كافية!
اوضح حتى يمكن توجيهك
جزاك الله الف خير لك و لوالديك
انظر الى هذا الكود عندما اقوم بكتابته يقوم بحجز مساحه في الذاكره Memory
و ان كان الحجم اكبر تظهر رساله Out of memory
كود :
procedure TForm1.btn1Click(Sender: TObject);
var
i: Integer;
databyte : PByteArray;
begin
GetMem(databyte, High(Integer) div 5);
for i := 0 to (High(Integer) div 5)-1 do
begin
databyte[i] := i;
Application.ProcessMessages;
end;
btn1.Caption := 'ok';
end;