Uses:
Windows;
Type
ByteArray = array of byte;
function ByteArrayToStr(bArray: array of byte): String;
begin
SetLength(Result,SizeOf(bArray));
CopyMemory(@Result[1],@bArray[0],SizeOf(bArray));
end;
function StrToByteArray(Buffer: String): ByteArray;
begin
SetLength(Result,lstrlen(PChar(Buffer)));
CopyMemory(@Result[0],@Buffer[1],Length(Buffer));
end;
سبحان الله وبحمده سبحان الله العظيم
كل من 1 user says قال شكرا ل Agmcz على المشاركة المفيدة1 user says Thank You to Agmcz for this post • mohamed49
function StrToByteArray(Buffer: AnsiString): TByteArray;
begin
SetLength(Result,lstrlen(PChar(Buffer)));
CopyMemory(@Result[0],@Buffer[1],Length(Buffer));
end;
سبحان الله وبحمده سبحان الله العظيم
كل من 1 user says قال شكرا ل Agmcz على المشاركة المفيدة1 user says Thank You to Agmcz for this post • mohamed49
17-03-2017, 08:25 PM (آخر تعديل لهذه المشاركة: 17-03-2017, 08:55 PM بواسطة mohamed49.)
نعم انا قمت بعدة تجارب اخرها عدلت على الكود الخاص بك بعمل حلقة على السترنغ ونسخ رقمين لكن اصبح يعيد نسخ العدد الذي يلي العدد المنسوخ
هذا هو الكود بعد التعديل
// Agmcz function
function StrToByteArr(Str: ansistring): TByteArray;
var
i:integer;
begin
SetLength(Result, Length(Str));
for i := 0 to Length(Str)-1 do
Result[i]:= StrToInt(Copy(str, (i), 2));
end;
///
// Agmcz function
function StrToByteArr(Str: ansistring): TByteArray;
var i: integer;
str1tring;
begin
SetLength(Result,lstrlen(PChar(Str)));
for i := 0 to Length(Str) - 1 do
begin
Result[i] := ord(Str[i + 1]) - 48;
end;
///
برجاء اخي لو تجرب عندك اذا ما ياخذ من وقتك كثير