تقييم الموضوع :
  • 0 أصوات - بمعدل 0
  • 1
  • 2
  • 3
  • 4
  • 5
مثال علي عدم فتح البرنامج مره اخري
#1
السلام عليكم اخوتي الافاضل
من باب العلم والافاده

فقد بحثت كثيرا عن كود يجعل البرنامج عند فتحه مره اخري وكان مفتوح من قبل تظهر رساله تفيد بأن البرنامج مفتوح من قبل
هناك خياراسمه (Make single instance application) ولكن هدا الخيار يجبر البرنامج بعدم فتحه مره اخري
ولكن ممكن العميل ما ياخدش باله ان البرنامج مفتوح ويظن ان البرنامج فيه مشكله لانه بيضغط عليه ومفيش حاجه بتتفتح
فلابد من ظهور رساله تفيد بان البرنامج مفتوح 
واظن ان ده هيكون افضل
بحثت كثيرا والحمد لله وجدت حل 
قمت بشرحه لكم علشان الكل يستفيد:

1- نقوم بعمل متغير في Setting  ونسميه مثلا CheckOpen ويكون من نوع  Boolean ونجعل قيمته الافتراضيه False
2-في حدث ال Load  نقوم بكتابة الكود التالي : 


PHP كود :
If My.Settings.CheckOpen True Then
            MsgBox
("البرنامج مفتوح بالفعل")
 
           End
        Else
            My
.Settings.CheckOpen True
            My
.Settings.Save()
 
           Me.Show()
 
       End If 
3- في حدث ال Form_Close  او في زر غلق البرنامج نقوم بكتابة الكود التالي :

PHP كود :
My.Settings.CheckOpen False
        My
.Settings.Save()

 
       Close() 


مرفق مثال لعله يفيد بعض الاخوه.


.rar   Open Project.rar (الحجم : 62.15 ك ب / التحميلات : 94)
الرد }}}
#2
السلام عليكم و رحمة الله و بركاته
بارك الله فيك أخي الكريم على المثال الرائع و مشاركتنا إيّاه
للإضافة و تنوّع الأفكار يمكن جعل هذا الكود بأوّل فورم لودْ بالمشروع فهو يفي بالغرض بطريقة جيّدة
كود :
 Dim appProc() As Process
       Dim strModName, strProcName As String
       strModName = Process.GetCurrentProcess.MainModule.ModuleName
       strProcName = System.IO.Path.GetFileNameWithoutExtension(strModName)
       appProc = Process.GetProcessesByName(strProcName)
       If appProc.Length > 1 Then
           MessageBox.Show("توجد نسخة ثانية من المنظومة قيد التّشغيل .. سيتم الخروج نهائيًا")
           End
       End If

تحياتي
قناتنا على اليوتوب
الرد }}}
#3
وعليكم السلام ورحمة الله وبركاته
مرحباً اخى Emam emam

جزاك الله خيراً على الاضافة الجميلة والطريقة البسيطة والرائعة
الطريقة التى تستخدمها رائعة وسهل فهمها لدا الجميع

ولكن تقع مشكلة بسيطة ممكن تقول عنها كونها نقطة ضعف بالكود
وهو اذا تم نسخ ملف البرنامج الى مجلد اخر ستتمكن من فتح البرنامج مري  اخري
وهذا كون طريقة الـ Settings تعتمد على مسار البرنامج ويتم تفريغ الـ Settings
كلما تم نقل البرنامج من مسار الى مسار اخر وهذا للافادة ولكي تعم الفائدة لك وللجميع

سيتم نقل الموضوع الى القسم الصحيح حتى يعم فائدة الموضوع للاخرين

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: Emam emam , ابراهيم ايبو , asemshahen5
#4
(17-10-19, 01:42 AM)عبد العزيز البسكري كتب :
السلام عليكم و رحمة الله و بركاته
بارك الله فيك أخي الكريم على المثال الرائع و مشاركتنا إيّاه
للإضافة و تنوّع الأفكار يمكن جعل هذا الكود بأوّل فورم لودْ بالمشروع فهو يفي بالغرض بطريقة جيّدة
كود :
 Dim appProc() As Process
       Dim strModName, strProcName As String
       strModName = Process.GetCurrentProcess.MainModule.ModuleName
       strProcName = System.IO.Path.GetFileNameWithoutExtension(strModName)
       appProc = Process.GetProcessesByName(strProcName)
       If appProc.Length > 1 Then
           MessageBox.Show("توجد نسخة ثانية من المنظومة قيد التّشغيل .. سيتم الخروج نهائيًا")
           End
       End If

تحياتي
الف شكر لك اخي وحبيبي  عبدالعزيز البسكري علي هده الاضافه الجميله وجزاك الله كل خير

(17-10-19, 03:45 PM)elgokr كتب :
وعليكم السلام ورحمة الله وبركاته
مرحباً اخى Emam emam

جزاك الله خيراً على الاضافة الجميلة والطريقة البسيطة والرائعة
الطريقة التى تستخدمها رائعة وسهل فهمها لدا الجميع

ولكن تقع مشكلة بسيطة ممكن تقول عنها كونها نقطة ضعف بالكود
وهو اذا تم نسخ ملف البرنامج الى مجلد اخر ستتمكن من فتح البرنامج مري  اخري
وهذا كون طريقة الـ Settings تعتمد على مسار البرنامج ويتم تفريغ الـ Settings
كلما تم نقل البرنامج من مسار الى مسار اخر وهذا للافادة ولكي تعم الفائدة لك وللجميع

سيتم نقل الموضوع الى القسم الصحيح حتى يعم فائدة الموضوع للاخرين

تحياتى لك
وتمنياتى لك التوفيق

الف شكر لك استادنا وجبيبنا الغالي elgoker  علي هده اللمسه والمعلومه الجميله جزاك الله خيرا
الرد }}}
تم الشكر بواسطة: elgokr , ابراهيم ايبو , asemshahen5
#5
الشكر لله والحمد لله
والحمد لله على كل حال

نحن دائماً نتعلم من بعضنا اخى الحبيب
تخيل عندما يقال لكل مشكلة 1000 حل

فهذه هى البرمجة لكل طريقة تريد ان تتعامل معها
اكثر من اسولب يمكنك فعل بها الامر ليعطي نفس النتيجة

تحياتى لك
وتمنياتى لك التوفيق
{ وَقُل رَّبِّ زِدْنِي عِلْمًا }
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]

ساهم دائماً فى    لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل 
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله


 شرح كيفية عمل قاعدة بيانات تعمل على اكثر من جهاز على الشبكة الداخلية
الرد }}}
تم الشكر بواسطة: ابراهيم ايبو , asemshahen5 , Emam emam


المواضيع المحتمل أن تكون متشابهة .
الموضوع : الكاتب الردود : المشاهدات : آخر رد
  مثال تحميل من اليوتيوب justforit 0 220 22-10-25, 01:38 AM
آخر رد: justforit
  مثال حفظ البيانات حسب النوع مصمم هاوي 4 550 13-10-25, 05:06 PM
آخر رد: justforit
  فكرة جميلة جدا : أزي تعمل عداد لعمر البرنامج بدون قاعدة بيانات(نسخة تجريبية) ggtt17121985 0 585 14-02-25, 02:55 AM
آخر رد: ggtt17121985
  [مشروع] مثال بسيط محاكاة للكونسول justforit 0 342 18-12-24, 01:13 AM
آخر رد: justforit
  مسح الصور وحفظها بلاحقة Pdf او jpg مثال معدل من احدى المشاركات ابراهيم ايبو 1 1,704 01-09-24, 02:46 PM
آخر رد: ahlamalgomate2020
  [VB.NET] مثال بسيط عن كيفية عمل برنامج المصحف كمثال موقع [ quran.ksu.edu.sa ] elgokr 15 10,356 07-07-24, 07:39 AM
آخر رد: المدير الصغير
  [مثال] مثال لنسخ وإستعادة قاعدة البيانات ( تحديث) نسخ تلقائي للقاعدة حسب اليوم والساعة جميل علي 81 53,317 10-02-24, 11:26 AM
آخر رد: محمد العموري
  جعل البرنامج لا يعمل على الاجهزة التي لاتدعم اللغة العربية العتيق 0 634 27-01-24, 08:08 PM
آخر رد: العتيق
  [مثال] تشغيل البرنامج لفترة محددة مع التفعيل Kamil 0 642 07-01-24, 01:43 AM
آخر رد: Kamil
  مثال استيراد اى ملف اكسيل وتصدير البيانات الى ملف اكسيل new_programer 3 3,851 07-12-22, 12:19 PM
آخر رد: hoda299

التنقل السريع :


يقوم بقرائة الموضوع: