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

كيف تعرف إذا كان برنامجك مفتوحا من قبل

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

انظر الكود التالي

    ' هل تم تحميل البرنامج سابقا
    Friend Function ISAppLoadedBefore() As Boolean
        Dim Prc() As Process
        Dim pr As Process

        ' ابحث ضمن العمليات الجارية في الويندوز 
        Try
            ' إحضار معلومات العملية الحالية
            pr = Process.GetCurrentProcess()
            ' إحضار قائمة بالعمليات المماثلة
            Prc = Process.GetProcessesByName(pr.ProcessName)
            ' إذا كان يوجد أكثر من عملية
            If Prc.Length > 1 Then
                Return True
            Else
                Return False
            End If
        Catch ex As Exception
            ex = Nothing
        End Try

    End Function

الإجرائية تعيد القيمة True إذا كان البرنامج موجود سابقا في الذاكرة و False إذا كانت هذه هي المرة الأولى

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#2

السلام عليكم

مشكور جداً على هذا الكود , حقيقة كود رائع .

في المثال يتضح المقال

#3

السلام عليكم

بارك الله فيك اخىsamerselo وجزاك الله خيرا لانى كنت ابحث عن مثل هذا الكود

VB.NET and C# Comparison

http://www.harding.edu/fmccown/vbnet_csharp_comparison.html

002.gif

=-=-=-=-=-=-=
ذو العلم يشقى فى النعيم بعلمه .:. واخو الجهالة فى الشقاوة ينعم
=-=-=-=-=-=-=
يا من بدنياه اشتغل . قد غره طول الأمل . فالموت يأتى بغتة . والقبر صندوق العمل
=-=-=-=-=-=-=
ان لم تستطع ان تجد ما تفعله فافعل ما لم تسطع ان تجده

screen_shot_2011-05-19_at_12.44.49_pm.pn

#6

شكرا لكل مر من وقرأ الكود

وشكر أكبر لكل من وضع ردا

منتظر أي ملاحظة أو تطوير للكود من الجميع

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#7

جزاك الله خير

فلسطين الزاهية بألوان الحب والسلام

ذلك الطعم الزيتوني الذي يتدفق عسلاً من أفواه بساتينها وحدائقها

تشتاق إليها نفوس المتقين وترنوا للسجود فيها جباه المسلمين

#9

مشكور على هذا الكود .. اخي العزيز ..

بس عندي مشكلة وهي اني اريد ان اجعل هذا الكود داخل الكود المسئول عن تحميل الفورم .. ولكني لحد الآن متحير ..

هل اجعله تحت

Sub New

او لا ..

اريد التوضيح ..

تم تعديل هذه المشاركة بواسطة idle man في 6 سبتمبر 2005 في 11:26

#10

عملت الطريقة ..

فقط ارفق هذه الفنكشن في ال class .(( قصدي في project))

 Public Function Test()
        Dim Pro As Process()
        Dim pr As String

        pr = Process.GetCurrentProcess.ProcessName()
        Pro = Process.GetProcessesByName(pr)

        If Pro.Length <> 1 Then
            MsgBox("Sorry, close the last form then start again", MsgBoxStyle.OKOnly)
            Process.GetCurrentProcess.Kill()
        End If

    End Function

ثم اعملوا استدعاء call من sub new() .. باسم هذه الفنكشن .

#11
idle man كتب:
مشكور على هذا الكود .. اخي العزيز ..

بس عندي مشكلة وهي اني اريد ان اجعل هذا الكود داخل الكود المسئول عن تحميل الفورم .. ولكني لحد الآن متحير ..

هل اجعله تحت

Sub New 

او لا ..

اريد التوضيح ..

أنا شخصيا استخدمته في الحدث Load للنموذج الرئيسي للبرنامج

كالمثال التالي

    Private Sub MainForm_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load

        ' إذا كان البرنامج مفتوح سابقا لاتفتح نسخة جديدة
        If ISAppLoadedBefore() = True Then End

' باقي إجراءات حدث التحميل

    End Sub

ووضعتها في أول سطر لسبب أنه إذا كنت تنوي إنهاء البرنامج فلا معني لعمل إجراءات تحميل النموذج

كما لايوجد ما يمنع وضعه في Sub New ولكن إن كنت تستخدم Sub New الخاص بالنموذج انتبه يجب أن يكون أي أمر تضيفه هناك بعد أمر InitializeComponent

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#12

تعديل حلو idle man

بس سبب عدم إنهائي للبرنامج من داخل الـ function هو انه ممكن أن يكون البرنامج يحتاج لعمل بعض الأوامر قبل إنهاء البرنامج فعليا فيقوم المبرمج باختبار القيمة المعادة من الاجراء وينفذ التسلسل الذي يرغبه لإنهاء البرنامج

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#13
samerselo كتب:
بس سبب عدم إنهائي للبرنامج من داخل الـ function هو انه ممكن أن يكون البرنامج يحتاج لعمل بعض الأوامر قبل إنهاء البرنامج فعليا فيقوم المبرمج باختبار القيمة المعادة من الاجراء وينفذ التسلسل الذي يرغبه لإنهاء البرنامج

لم افهم مقصدك اخي العزيز .

#14

يعني إذا كان الاختبار صار بعد فتح ملفات أو كلاسات أو أشياء أخرى تحتاج إلى معالجة أو إنهاء قبل الإنهاء الفعلي للبرنامج

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#15

انا اتلخبط الصراحه

ارجو ان يرفق احدكم المثال

سبحان الله وبحمده سبحان الله العظيم

لا اله الا الله محمدا رسول الله

اللهم اغفر للمسلمين والمسلمات والمؤمنين والمؤمنات الاحياء منهم والاموات

ـــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــــ

حمل كريستال ريبورت 10 اربعه اصدارات

ww12kz.jpg

hashad.jpg

#16

منحاول نحط مثال:

بس نحنا الاتنين عم نشتغل تقريبا نفس الشغلة

أنا عم برجع قيمة boolean وبعدين المبرمج يللي بيستخدم الاجرائية بيختبر القيمة مثل

if ISAppLoadedBefore() = true then
              ' do what you want before end
                ...
                ...
                ...
               end
end if

وهو عم ينهي البرنامج فورا من داخل الإجراء بواسطة الأمر Process.GetCurrentProcess.Kill()

بس ومع ذلك مبدأ الاجراء والكود واحد عندي وعنده

أرجو أن يكون ذلك واضحا

عن عائشة رضي الله عنها أن النبي صلى الله عليه وسلم قال: إن الله يحب إذا عمل أحدكم عملا أن يتقنه

نعيب زماننا والعيب فينا ... وما لزماننا عيب سوانا

ونهجو ذا الزمان بغير ذنب ... ولو نطق الزمان لنا هجانا

محمد سامر أبو سلو

#17

مشكور

#18

جميل جدا

تقبل تحياتى

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

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