سلام
في نضام الوندوز يوجد جدول يسمى atom table يستخدم لتخزين الجمل strings و معرفات المراسلة , يستطيع أي برنامج ان يضيف جمل strings الى الجدول تسمى atom name , و يسترجع 16-bit integer يسمى atom و يستخدم للوصلول الى الجمل داخل الجدول ,
باستخدام فكرة Atom تستطيع أن تجعل برنامج يشتغل مرة واحدة فقط , ولن يشتغل الا باعادة تشغيل الوندوز . ودلك باضافة اي جملة string الى جدول Atom تم يقوم برنامجك بمقارنة وجود هده الجملة في الجدول , فادا وجدها فهدا يعني أن برنامجك قد اشتغل من قبل ,
procedure TForm1.FormShow(Sender: TObject);
var atom : integer;
CRLF : string;
begin
if
GlobalFindAtom('arabteam2000') = 0 then
atom := GlobalAddAtom('arabteam2000')
else
begin
CRLF := #10 + #13;
ShowMessage('This version may only be run once for every Windows Session.' + CRLF +
'To run this program again, you need to restart Windows, or better yet:' + CRLF +
'REGISTER !!');
Close;
end;
end;
وشكرا
مــــMADIــــدي