29-09-2017, 08:03 PM
بالنسبة لخاصية منع ازدواجية التطبيق فكما تفضل الأخ عبد العزيز بطرحه
أنه هناك بعض البرامج تسمح بذلك لأنها تتيح للمستخدم استعمال عدة عمليات في الوقت نفسه و من غير انتظار
كما أن هناك برامج لا تسمح بذلك و لذلك ارتأيت أن أضع كود عدم السماح بازدواجية التطبيق مع مثال توضيحي لمن أراد استعماله
+ سوف يتم طرح المرحلة الثانية كما سبق و ذكرت هذا الأسبوع بعد مناقشة أساليب الحماية و استعمالها في التطبيق و شكرا
العنوان: عدم السماح بازدواجية التطبيق
هذه العملية تعتبر من العمليات الأساسية في بعض البرامج كبرامج المحاسبة مثلا
و هي عملية جد بسيطة و هي البحث عن اسم البرنامج فإن وجد يمنع فتحه و ان لم يوجد يتم الفتح ببساطة
الآن الكود:
و أخيرا طبقنا ذلك في تطبيقنا السابق و هو في المرفقات مشاهدة طيبة
أنه هناك بعض البرامج تسمح بذلك لأنها تتيح للمستخدم استعمال عدة عمليات في الوقت نفسه و من غير انتظار
كما أن هناك برامج لا تسمح بذلك و لذلك ارتأيت أن أضع كود عدم السماح بازدواجية التطبيق مع مثال توضيحي لمن أراد استعماله
+ سوف يتم طرح المرحلة الثانية كما سبق و ذكرت هذا الأسبوع بعد مناقشة أساليب الحماية و استعمالها في التطبيق و شكرا
العنوان: عدم السماح بازدواجية التطبيق
هذه العملية تعتبر من العمليات الأساسية في بعض البرامج كبرامج المحاسبة مثلا
و هي عملية جد بسيطة و هي البحث عن اسم البرنامج فإن وجد يمنع فتحه و ان لم يوجد يتم الفتح ببساطة
الآن الكود:
كود :
app_name='AIGLC';
var
EDA: THandle;
begin
EDA:=CreateMutex(nil,True,app_name);
if GetLastError = ERROR_ALREADY_EXISTS then
begin
MessageDlg('Application deja ouverte', mtError, [mbOk], 0);
Exit;
end;
try
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TForm2, Form2);
Application.Run;
finally
closehandle(EDA);
end
end.و أخيرا طبقنا ذلك في تطبيقنا السابق و هو في المرفقات مشاهدة طيبة
اطلب العلم من المهد إلى اللحد


![[-]](https://delphi4arab.net/forum/D4A2020/collapse.png)