تشغيل نسخه وحيده من البرنامج - سي شارب - مقـــالات - Top Coder
Welcome to our Site
الدخــول Or تسجـــيل
الثلاثاء
2016-12-06
1:11 PM
تسجــــيل | دخـــول
الرئيسية » مقالات » سي شارب

تشغيل نسخه وحيده من البرنامج
تشغيل نسخه وحيده من البرنامج

مقـــدمه
طريقه لكشف ما اذا كانت نسخه من البرنامج تعمل بالفعل على النظام .

وكمثال انه عند تشغيل برنامج مثل winamp , yahoo , media player فانه في حالة كان البرنامج يعمل بالفعل يقوم البرنامج بفتح النسخه التي تعمل حالياً , وذلك حتى يكون البرنامج عاملاً بنسخه واحده فقط وعدم تكراره .
Mutex
سنستخدم الكلاس Mutex التابع للنيم سبيس System.Threading , والكود بسيط لا يتعدى اسطر قليله , فداخل داله الكونستركتور للبرنامج سنضع الكود , بحيث عند تحميل البرنامج يقوم الكود بالكشف عن النسخ الأخرى التي تعمل من البرنامج , وبالتالي اتخاذ الاجراءات التي تريدها في حالة كانت نسخه اخرى عامله  
 
 
حيث النص ProgramKey يعتبر كمفتاح للبرنامج او ID موحد للبرنامج , بحيث يقوم الكلاس بالكشف من خلال هذا المفتاح عن النسخ الأخرى التي تعمل , وبالتالي يقوم الكلاس بوضع قيمة المتغير firstInstance , وتكون القيمة true تكون النسخه الحالة هو اول نسخه من البرنامج , وفي حالة false فهذا يعني ان هناك نسخه اخرى تعمل , وداخل جملة if يمكنك اتخاذ الاجراءات التي تريدها في حالة هناك نسخ اخرى من البرنامج , وكافتراضي تم وضع كود لاظهار رساله تخبر المستخدم ان البرنامج يعمل بالفعل , و بالتالي تغلق النسخه الجديده .

وتم وضع الكود قبل تنفيذ دالة InitializeComponent وذلك لينفذ الكود قبل تحميل مكونات البرنامج , لتوفير الوقت .
ختـــام
تم الإستعانه بموضوع على موقع كود بروجيكت
http://www.codeproject.com/Tips/170409/Run-Only-One-Copy-Of-Application#alternative1
تحميل المشروع
 Written by :  Mohammed Mahmoud
الفئة: سي شارب | أضاف: ham_mody2000 (2011-10-28 11:04 AM)
مشاهده: 2222 | الترتيب: 0.0/0


أترك تعليقك من خلال حسابك على الفيس بوك

تعليقات مشتركي الموقع

مجموع المقالات: 0
إضافة تعليق يستطيع فقط المستخدمون المسجلون
[ التسجيل | دخول ]
طريقة الدخول
بحث
Our Facebook community

تم إطلاق صفحة توب كودر على الفيس بوك

Advertisment
الأحـــدث
hitstatus
Copyright Mohammed Mahmoud © 2016
إنشاء موقع مجاني с uCoz