تم تغيير النص الثابت في الاصدار 4.4 :
كما تم اضافة تحقق جديد:
هناك تحقق اخر خاص بمدة التفعيل .....تم التغلب عليه باستبدال اخر 03 محارف
من السيريال بـ:'000' قبل التحقق الاخير طبعا
صراحة لست ببراعة الاستاذ عصام
لكن قلت اقدم لكم مثال للدالة التى أسميتها جمع (ضرب كل محرف * ترتيبه)
فقلت اقدمها لكم
بالنسبة لرقم الأحاد من ناتج عملية الجمع فوق:
النتيجة النهائية تكون تقريبا بالشكل التالي
وكل الشكر موصول للاستاذ Esso_x
_Str2 = 'D962F890-C62C-48D5-B9B1-8A98C5D5428B';
تم اضافة ترخيص جديدUnlimited Edition
كما تم اضافة تحقق جديد:
esso_x
0835-9970-4363-010
حذف(-)
083599704363010
جمع (ضرب كل محرف * ترتيبه)
0=>(30h)*1 = 30h 7=>(37h)*7 = 181h 0=>(30h)*13 =270h
8=>(38h)*2 = 70h 0=>(30h)*8 = 180h 1=>(31h)*14 =2AEh
3=>(33h)*3 = 99h 4=>(34h)*9 = 1D4h 0=>(30h)*15 =2D0h
5=>(35h)*4 = D4h 3=>(33h)*10 = 1FEh
9=>(39h)*5 = 11Dh 6=>(36h)*11 = 252h
9=>(39h)*6 = 156h 3=>(33h)*12 = 264h
Hex:
30h+70h+99h+D4h+11Dh+156h+181h+180h+1D4h+1FEh+252h+264h+270h+2AEh+2D0h = 17F7h => Dec:6135
يتم اعتماد(الأحاد 5) من المجموع (6135) كاخر جزء من السيريال
-------- Office Edition Serial-------
esso_x
0835-9970-4363-0105
-------------------------------------
هناك تحقق اخر خاص بمدة التفعيل .....تم التغلب عليه باستبدال اخر 03 محارف
من السيريال بـ:'000' قبل التحقق الاخير طبعا
صراحة لست ببراعة الاستاذ عصام
لكن قلت اقدم لكم مثال للدالة التى أسميتها جمع (ضرب كل محرف * ترتيبه)
فقلت اقدمها لكم
function Sum_MulxPos(STR: String): integer;{By terco}
var
i,SMP :integer;
begin
SMP := 0;
for i := 1 to Length(STR) do
begin
SMP := SMP + Ord(i*Ord(STR[i]));
end;
Result:=SMP;
end;
بالنسبة لرقم الأحاد من ناتج عملية الجمع فوق:
function GetLastDigit(Num: Integer): string;
begin
Result:=FloatToStr(Num mod 10);
end;
النتيجة النهائية تكون تقريبا بالشكل التالي
Part1='111122223333';
X:= GetLastDigit(Sum_MulxPos(Part1+'000'));
Result:=part1+'000'+ X;
Serial:=1111-2222-3333-000X;
وكل الشكر موصول للاستاذ Esso_x
" اللهم أحسن خاتمتنا وأخرجنا من الدنيا علي خير"