كيف الحال هذا برنامج بسيط ..هي فكرة ان تدخل الباسوورد وتضغط الزر اذا كان الباسوورد سليم يدخل على الفورم واذا لم يكن سليم يظهر رسالة ... ما أريده هو (اذا كان الباسوورد سيم يدخل للفورم 2 ولا اريد للفورم 1 أن تظهر بعد ذلك .. اي انها فقط تكون لل Activation .. لكن لم أستطع ان أجعلها تتوقف فهي تظهر مع كل تشغيل .. ارجو المساعدة ..
ملاحظة باسوورد الدخول هو 2036
---
أرجو التعديل على البرنامج ..
ووضع أحسن طريقة واقوى ..
06-09-16, 07:52 PM (آخر تعديل لهذه المشاركة : 06-09-16, 08:13 PM {2} بواسطة abdulla2.)
طيب أخي سعود ممكن اتواصل معاك لوفي معاك صفحة في الفيسبوك ..
عندي فكرة بالحماية واريد الإستفسار عنها ..
لوأمكن ..
للأسف أخي جربت الفيدو ماضبط معاي لاني استخدم 2010
وانت بالفيديو تشرح من 2012 الى2010
وليس العكس ..
----
أرجو أن ترسل لي صور للأكواد بارك الله فيك
؟؟؟؟
على العموم شكراً ..
سأنتظر من الأخوة الأكارم .. مساعدة في السؤال ..
السلام عليكم و رحمة الله دعنا نحشر المنطق في الموضوع اذا كان الباسور سليم لن يظهر الفورم الاول مرة اخرى و كيف سيعرف هذا الفورم انه يجب ان لا يظهر (ما حد خبره بالعامية) اذا يجب ان يكون هناك شيئ يخبر الفورم بان لا يظهر (قيمة منطقية بابسط صورة) عند كتابة الباسورد في الفورم و بعد ظغط زر التاكد و اذا كانت الباسور سليمة نجعل القيمة المنطقية =True و نعمل دالة يكون اقلاع البرنامج منها و نضع داخلها شرط بان تقرأ هذه القيمة المنطقية فاذا كانت = True عندها نخبر الفورم الاول بان يستريح و لا يتم الاقلاع منه بل من فورم اخر نحن نحدده اما عن المتغير المنطقي و اين نعرفه و تخزن قيمته انت اختر المكان الذي تحبه سواء في اعدادت البرنامج (لا افضل) او في في ملف خارجي او في مسجل النظام اتمنى تكون الفكرة واضحة
اهلا اخي تابع ما ساقول و طبق كما قلت يجب ان يكون لدينا قيمة يتم فحصها لنقرر من سيقلع من النماذج وفق شرط نضعه اذهب الى المشروع و اضف مديول جديد Module1 وضع هذا الكود داخله انا ساعتمد طريقة التخزين في الرجستري
PHP كود :
Imports Microsoft.Win32
Module Module1
Public Sub Main() If Registry.CurrentUser.OpenSubKey("Acivate") Is Nothing Then Dim Acivate As RegistryKey = Registry.CurrentUser.CreateSubKey("Acivate") Acivate.SetValue("Acivate", "False") End If
Dim logicValue As Boolean = GetValueKey("Acivate")
If logicValue = False Then Application.Run(New Form1()) Else Application.Run(New Form2()) End If
End Sub
'الحصول على قيمة اي مفتاح Private Function GetValueKey(ByVal SubKeyName As String) As String Dim Value As String = "" If Not IsNothing(My.Computer.Registry.CurrentUser.OpenSubKey(SubKeyName)) Then Value = My.Computer.Registry.CurrentUser.OpenSubKey(SubKeyName).GetValue(SubKeyName) Return Value Else Return "" End If Return Value
End Function
'اسناد قيمة لاي مفاح Public Sub SetValueKey(ByVal KeyNmae As String, ByVal Value As String) If Not IsNothing(My.Computer.Registry.CurrentUser.OpenSubKey(KeyNmae)) Then My.Computer.Registry.CurrentUser.OpenSubKey(KeyNmae, True).SetValue(KeyNmae, Value) End If
End Sub
End Module
الان اصبح لدينا متغير عن طريقه نستطيع ان نقرر ماذا نفعل ما تبقى هو اسناد قيمة للمتغير Activate = True اذا كانت كلمة المرور سليمة و بالتالي في الاقلاع القادم سيتم فحص القيمة و بعدها يتم اتخاذ القرار الان في النموذج Form1 في حدث زر الدخول
PHP كود :
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim user As String = "ameer" Dim xyear As String = Date.Today.Year Dim xmonth As String = Date.Today.Month Dim xday As String = Date.Today.Day Dim sum As String = Val(xyear) + Val(xmonth) + Val(xday) + user.Length If TextBox1.Text = "sum" Then SetValueKey("Acivate", "True") Application.Restart() Else MsgBox("كلمة المرور خاطئة") End If
06-09-16, 11:59 PM (آخر تعديل لهذه المشاركة : 07-09-16, 12:05 AM {2} بواسطة abdulla2.)
أخي أبو ليلى تحياتي اليك ..
حيتما ادخل الباسوورد ويكون الباسورد صحيحا ..
لا يفتح الفورم الثاني وانما يرجع ويفتح الفورم الاول مرة أخرى
ولا يدخل للفورم الثاني واعود اشغل البرنامج وترجع الفورم الاولى كماهي ..؟
أخي ابو ليلى شكرا لك عمل بنجاح ..
يمكن كان يحتاج الى اعادة اغلاق البرنامج وفتحة من جديد ..
شكرا لك .. اخي وبارك الله فيك ..