الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تشغيل البرنامج لمرة واحدة

مغلق
بدأه abetry في 28 مايو 2005 · 2 رد · 571 مشاهدة · في Microsoft Visual Basic.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

بسم الله الرحمن الرحيم

الرجاء من الأخوة مساعدتي في كيفية جعل البرنامج يعمل لمرة واحدة.

أي انه اذا قمت بتشغيل البرنامج، واردت ان اشغل البرنامج مرة ثانية يعطيني رسالة تفيد ان البرنامج شغال، او لايمكن تشغيل نسختين من البرنامج نفسه

ولكم جزيل الشكر

اللهم لا سهل الا ماجعلته سهلا، وانت تجعل الصعب ان شئت سهلا

83_45a7168be2ddb.jpg

#2

Class System.Threading.Mutex يضع مؤشراً في الذاكرة، و يمكنك عن طريق هذا المؤشر أن تتحكم في تشغيل التطبيق، يعني لو كان هذا المؤشر موجود في الذاكرة فهذا يعني ان التطبيق شغال بالفعل، و لا يعمل عندما يقوم المستخدم بالضغط على الـ EXE الخاص به، أما لو كان هذا المؤشر غير موجود بالذاكرة فهذا معناه ان التطبيق الآن غير شغال و بالتالي يقوم بتشغيله..

ضع هذا الـ Module في مشروعك، و حدد الـ Startup Object للـ Sub Main ، بالاضافة الى ان الفورم الاساسية للمشروع اسمها frmMain:

Imports System.Threading

Module Initial

    Public Sub Main()

        Dim NotRunning As Boolean
        Dim mMutex As Mutex = New Mutex(False, "OneInstance", NotRunning)

        If NotRunning = True Then
            Application.Run(New frmMain())
        Else
            MessageBox.Show("You can not run more than one instance of the application." & vbCrLf & "Please close the running instance if necessary.", "Application is already running.", MessageBoxButtons.OK, MessageBoxIcon.Information)
            Application.Exit()
        End If

    End Sub

End Module

تم تعديل هذه المشاركة بواسطة محمد عبد العليم في 28 مايو 2005 في 20:00

رأس الحكمة الإيمان بالله

#3

بسم الله الرحمن الرحيم

الف الف الف الف شكرا لك اخي العزيز على مجهودك

واتمنى لك التوفيق باذن الله سبحانه وتعالى

اللهم لا سهل الا ماجعلته سهلا، وانت تجعل الصعب ان شئت سهلا

83_45a7168be2ddb.jpg

هذا الموضوع مغلق.

مواضيع مشابهة