السلام عليكم ورحمة الله وبركاته
ما هي القطعة في الجهاز(المعالج-المزربورد-الهاردسك-كرت الشبكة---او غيرهم) التي تتوفر بها
1- امكانية استخراج رقمها مع اخلاف اصدار الوندوز
2- عدم تغيها بعد الفورمات
3- لا تتكرر مع اجهزة اخرى
بحيث استطيع حماية برنامجي بها
تحياتي
وعليكم السلام ورحمة الله وبركاته
يا اخي ينفع نعمل حماية للبرنامج من خلال جميع ماذكرت تقريبا
وهذا البرنامج المرفق يعرض لك رقم الهارد دسك والمازر بورد ونوعها وخلافه
جرب البرنامج لكي تعرف رقم معلومات الجهاز الخاص بك
- ثانيا : من خلال هذا الكود تستطيع عمل حمايه لبرنامجك
عن طريق وضع الكود في اول شاشه للبرنامج في حدث ال Load
كود :
'لعدم تشغيل البرنامج إلا علي هذا الجهاز
'Flash SERIAL.
Dim MOS_HD As New ManagementObjectSearcher("SELECT * FROM Win32_DiskDrive")
For Each mo_HD In MOS_HD.Get()
Next
'PROCESSOR ID.
Dim MOS_PR As New ManagementObjectSearcher("SELECT * FROM Win32_Processor")
For Each mo_PR In MOS_PR.Get()
Next
'BIOS ID.
Dim MOS_BIOS As New ManagementObjectSearcher("SELECT * FROM Win32_BIOS")
For Each mo_BIOS In MOS_BIOS.Get()
Next
'for HD Serial.
Dim hdd As New ManagementObjectSearcher("select * from Win32_DiskDrive")
For Each hd In hdd.Get
HDD_Serial = hd("SerialNumber")
Next
If HDD_Serial = ("رقم الهارد ديسك") And
mo_PR("ProcessorId") = ("رقم البروسيسور") And
mo_BIOS("Name") = ("اسم المازر بورد") And
mo_HD("Model") = ("موديل الهارد ديسك") Then
Form1.show()
Else
MsgBox(" عفواً البرنامج لا يعمل علي هذا الجهاز !", MsgBoxStyle.OkOnly + MsgBoxStyle.MsgBoxRtlReading + MsgBoxStyle.Information + MsgBoxStyle.MsgBoxRight, "خطأ")
End
End If
السّلام عليكم و رحمة الله و بركاته
هل هناك مكتبة ناقصة أخي الكريم .. أو جزء غير مذكور .. لأنّها ظهرت لدي بعض الأخطاء
تحياتي
[b]وعليكم السلام ورحمة الله وبركاته اخي عبد العزيز البسكري[/b]
نعم هناك مكتبه يجب اضافتها وهي System.Management وتتم اضافتها في refferences
كذلك اخي لابد من تعريف المتغيرات كالاتي :
كود :
Public HDD_Serial As String
Public mo_HD As ManagementObject
Public mo_PR As ManagementObject
Public mo_BIOS As ManagementObject
عذرا اخي علي النسيان فقد وضعت الرد وانا مشغول ببرنامجي الذي اصمم فيه
السّلام عليكم و رحمة الله و بركاته
بارك الله فيك و لك و جزاك خير الجزاء أخي الكريم
أنا الواجب عليه الإعتذار .. أتعبتك معي
الملف الآن يشتغل 10 على 10 و الحمد لله
تحياتي واحتراماتي
شكرا جزيلا لاهتمامك
بالنسبة لرقم المعالج عن تجربة بيتكرر
ورقم الهاردسك يتغير مع الفورمات
ورقم واسم البيوس يختلف طريقة القراءة مع اختلاف اصدار الوندوز
وبالتالي اجد نفسي مضطر كلما قام العميل بعمل فورمات لجهازه
وهذا يقلل من ثقة العميل بالبرنامج ويجعله يتشكك في امكانية فقدانه البرنامج اذا فقد التواصل معي
شكرا علي هذه المعلومه اخي
[b]ssayed111[/b]
ولكن ماهي الطريق الافضل من وجهة نظرك لحماية البرنامج؟
(25-03-18, 10:14 PM)emamtron2014 كتب : [ -> ]شكرا علي هذه المعلومه اخي [b]ssayed111[/b]
ولكن ماهي الطريق الافضل من وجهة نظرك لحماية البرنامج؟
السّلام عليكم و رحمة الله و بركاته
أعتقد أخي الكريم أنّه يجب الإعتماد على رقم الهارد ديسك أو المعالج كرقم ثابت مع إضافة معه رقم متغيّر تمويهي كتاريخ ميلاد أو رقم آخر ..
تحياتي
استخدام رقم الهارد ديسك او اي شئ اخر مماثل يمكن اعتباره الطريق السهل لحماية برتامج او يمكن اعتباره اسلوب فيه نوع من الكسل من المبرمج
حيث ان المبرمج هنا لا يحتاج الي حفظ السيرال في ملف
عموما لا يوحد حماية 100%
عليك ان تفكر اولا من سيشتري برنامجك ومن هنا تبدأ في وضع الإستراتيجية المناسبة لحماية برنامجك
موضوع السيريال يجب ان تقسمه علي مرحلتين
مرحلة Setup
و مرحلة التشغيل
في مرحلة Setup تطلب من المستخدم ادخال بياناته و تطلب منه ايضا ادخال السيريال الذي يؤكد شراؤه للبرنامج و تحفظ تلك البيانات في مكان ما علي الكمبيوتر
ثم و في مرحلة التشغيل تتأكد من وجود تلك البيانات
طبعا البيانات يجب ان يتم تشفيرها بشكل قوي
ايضا من تلك البيانات تسطيع ان تكتب محموعة من الدوال التي تقوم بتوليد السيريان المناسب
طريقة الحفظ متروكة لك
إما أن تحفظ البيانات في الريجستري او في ملف عادي او في اي ملف xmal او في داتا بيز او حتي تحفظها في صورة
المهم تكون عارف مسار الملف و نوعيته لكي تستطيع التعامل معه لاحقا من خلال برنامجك