delphi4arab منتديات دلفي للعرب
نقل بينات من مصفوفه PByteArray - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : نقل بينات من مصفوفه PByteArray (/showthread.php?tid=7516)



نقل بينات من مصفوفه PByteArray - DevBlack - 12-02-2016

السلام عليكم
اخواني قمت بانشاء مصفوفه من نوع
PByteArray
 وقد ملئتها بالبيانات و هي تعمل و لكن سؤالي هوه كيف سحب مجموعه من هذه البيانات و هذا الكود

type
TByteArray = array[0..99999999] of Byte;
PByteArray = ^TByteArray;




datamain: PByteArray;
datatmp: PByteArray;



GetMem(datamain, 12012012);

الان كيف ان انقل بينات من المصفوفه  main 
الى المصفوفه tmp
و يجب ان اكون انا حدد نقطة البدايه و نقطة النهايه
جربت هذا الطريقه ولكن لم تفلح معي

CopyMemory(datamain,datatmp,12043);

تضهر لي من الصفر الى حد الذي انا ادخلته

و شكرا لجميع اتمنى ان يكون واضحا



RE: نقل بينات من مصفوفه PByteArray - Agmcz - 14-02-2016

وعليكم السلام
هكذا أخي
PHP كود :
type
  TByteArray 
= array[0..99999999] of Byte;
 
 PByteArray = ^TByteArray;

var
 
 datamain: PByteArray;
 
 datatmp: PByteArray;

const
 
 arrbyt: array[0..9] of Byte = ($1,$2,$3,$4,$5,$6,$7,$8,$9,10);

procedure TForm1.Button1Click(Sender: TObject);
begin
  GetMem
(datamain, 10);
 
 CopyMemory(datamain, @arrbyt, 10);
 
 GetMem(datatmp, 5);
 
 CopyMemory(datatmp, @datamain[4], 5);  
  ShowMessage
(IntToStr(datatmp[0]));
  FreeMem(datatmp);
  FreeMem(datamain);
end; 



RE: نقل بينات من مصفوفه PByteArray - DevBlack - 16-02-2016

(14-02-2016, 09:40 PM)Agmcz كتب : وعليكم السلام
هكذا أخي
PHP كود :
type
  TByteArray 
= array[0..99999999] of Byte;
 
 PByteArray = ^TByteArray;

var
 
 datamain: PByteArray;
 
 datatmp: PByteArray;

const
 
 arrbyt: array[0..9] of Byte = ($1,$2,$3,$4,$5,$6,$7,$8,$9,10);

procedure TForm1.Button1Click(Sender: TObject);
begin
  GetMem
(datamain, 10);
 
 CopyMemory(datamain, @arrbyt, 10);
 
 GetMem(datatmp, 5);
 
 CopyMemory(datatmp, @datamain[4], 5);  
  ShowMessage
(IntToStr(datatmp[0]));
  FreeMem(datatmp);
  FreeMem(datamain);
end; 



جميل جدا بارك الله بيك اخي العزيز