![]() |
|
بخصوص كل يوم ينقص 1 من قاعدة البيانات - نسخة قابلة للطباعة +- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum) +-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3) +--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15) +--- الموضوع : بخصوص كل يوم ينقص 1 من قاعدة البيانات (/showthread.php?tid=7389) |
بخصوص كل يوم ينقص 1 من قاعدة البيانات - merzoug2020 - 09-01-2016 السلام عليكم إخواني الكرام أنا عملت برنامج أريد أن أضع له مدة تشغيل مجاني 30 يوما ووضعت في قاعدة البينات TEMP عدد الأيام التي تنقص منها كل يوم 1 حتى تصبح 0 البرنامج لا يشتغل وتحكم يكون من دلفي و أيضا و إذا غير المستخدم التاريخ يبقى الحساب عادي لا يتغير شيء هل من حل ؟ RE: بخصوص كل يوم ينقص 1 من قاعدة البيانات - merzoug2020 - 09-01-2016 أو يكون على regedit حساب أوتوماتيكي RE: بخصوص كل يوم ينقص 1 من قاعدة البيانات - merzoug2020 - 10-01-2016 شكرا لكم على الإجابة لكني الحمد لله عمل مجهودي على عملها ليلة كاملة و إليكم الكون عندا إقلاع البرنامج //------------------------------------------------------------------------------------------------------------------------- procedure TForm1.FormCreate(Sender: TObject); begin with DataModule2 do if adot.RecordCount=0 then begin Button1.Visible:=false; end else if adot.FieldByName('try').AsString='0000' then button1.Visible:=true else if adot.FieldByName('try').AsString<>'0000' then begin if adot.FieldByName('ja').AsDateTime<strtodate(FormatDateTime('dd-mm-yyyy',date ))then button1.Visible:=false else if StrToDate(FormatDateTime('dd-mm-yyyy',adot.FieldByName('lastd').AsDateTime))>StrToDate(FormatDateTime('dd-mm-yyyy',date)) then begin showmessage('La date ou le temps de système a été changé après le dernier essai'+#13+'ce qui implique une violation d''utilisation, Le logiciel va se fermer'); application.Terminate; end; end; with datamodule2 do begin if adot.RecordCount=0 then begin adot.Insert; ADOt.FieldByName('lastd').AsString:=FormatDateTime('dd-mm-yyyy',date); ADOt.FieldByName('ja').AsString:=FormatDateTime('dd-mm-yyyy',IncDay(date,15)); ADOt.FieldByName('try').Value:=7; adot.Post; end else begin if StrToDate(FormatDateTime('dd-mm-yyyy',ADOt.FieldByName('lastd').AsDateTime))>=StrToDate(FormatDateTime('dd-mm-yyyy',ADOt.FieldByName('ja').AsDateTime))then begin Showmessage('La version d''essai a expiré, veuillez acheter ce Logiciel'); Application.Terminate; end else begin adot.Edit; ADOt.FieldByName('lastd').AsString:=FormatDateTime('dd-mm-yyyy',date); adot.Post; end; end; Showmessage('Il reste '+floattostr(StrToDate(FormatDateTime('dd-mm-yyyy',ADOt.FieldByName('ja').AsDateTime))-StrToDate(FormatDateTime('dd-mm-yyyy',date)))+' jours d''essai, veuillez acheter ce Logiciel'); Button1.Visible:=true; end; datamodule2.ADOt.Open; datamodule2.ADOt.first; datamodule2.ADOt.Edit; datamodule2.ADOt.FieldByName('lastd').AsString:=FormatDateTime('dd-mm-yyyy',date); datamodule2.ADOt.Post; datamodule2.ADOt.Close; datamodule2.ADOt.Open; datamodule2.ADOt.first; if datamodule2.ADOt.FieldByName('lastoc').asstring='' then begin datamodule2.ADOt.Edit; datamodule2.ADOt.FieldByName('lastoc').AsString:=FormatDateTime('dd-mm-yyyy',IncDay(date,-1)); datamodule2.ADOt.Post; end; end; |