21-09-17, 01:10 PM (آخر تعديل لهذه المشاركة : 21-09-17, 01:13 PM {2} بواسطة gharib.)
(05-03-16, 02:11 AM)Omar 6.0 كتب : كود للحصول على الرقم التسلسلي للوحة الأم
حيث يمكن الاستفادة منه بالحماية أيضاً
كود :
Private Declare Sub GetMem1 Lib "msvbvm50.dll" (ByVal MemAddress As Long, var As Byte)
Private Function GetBIOSDate() As String
Dim p As Byte, MemAddr As Long, sBios As String
Dim i As Integer
MemAddr = &HFEC71
For i = 0 To 25
Call GetMem1(MemAddr + i, p)
sBios = sBios & Chr$(p)
Next i
GetBIOSDate = sBios
End Function
و يمكن الاستفادة من تاريخ البيوس
كود :
Private Declare Sub GetMem1 Lib "msvbvm50.dll" (ByVal MemAddress As Long, var As Byte)
Private Function GetBIOSDate() As String
Dim p As Byte, MemAddr As Long, sBios As String
Dim i As Integer
MemAddr = &HFFFF5
For i = 0 To 7
Call GetMem1(MemAddr + i, p)
sBios = sBios & Chr$(p)
Next i
GetBIOSDate = sBios
End Function
اخ عمر ارجو ان تتوسع في شرح كود للحصول على الرقم التسلسلي للوحة الأم و تاريخ البيوس لانني طبقتها و لم اجد نتيجة و ياريت ترفق لنا مثال مع تحياتي للجميع
يعطيكم العافيه جميعا .. حبيت اضيف اضافه للمووضوع بشغله كنت جربتها ! فهل هيا آمنه هاي الطريقه لمنع البرنامج من النسخ ؟! شغلة تانيه : اذا سويت البرنامج ك exe هل ممكن في حد يسرق ال source code ؟ اذا ممكن كيف ممكن اعمل تشفير ل source code واحمي برنامجي من سرقة الكود ؟
26-10-18, 12:13 PM (آخر تعديل لهذه المشاركة : 26-10-18, 12:14 PM {2} بواسطة dr.mostashar.)
(22-02-16, 01:51 PM)السيد الغالي كتب :
(22-02-16, 09:43 AM)السيد الغالي كتب : بعد اذن الاستاذ احمد عبد العليم وفقه الله
ارى ان تتم العملية بالطريقة التالية :
يتم اولا تحديد رقم المعالج ويكون ذلك تلقائيا اي عند تحميل الفورم ويقارن في حقل بجدول بقاعدة البيانات فاذا كان هذا الحقل فارغا وهو الاستخدام للمرة الاولى يتم خزن هذا الرقم في قاعدة البيانات فاذا تم فتح المشروع مرة اخرى سيقارن رقم المعالج مع ذلك الحقل في قاعدة البيانات فان كان متوافقا معه يفتح المشروع بشكل اعتيادي وان كان خلاف ذلك يضهر رسالة تفيد بعدم التطابق وهو ما يحصل عند نقل البرنامج الى جهاز اخر باعتبار ان رقم المعالج مختلف من جهاز الى اخر . ارجو ان تكون هذه الفكرة واضحة . وساقوم ان شاء الله بعمل مشروع بسيط لعمل ذلك .
الفكرة جميلة في حال تم نقل البرنامج وقاعدة البيانات من نفس الجهاز الذي تم تثبيت البرنامج فيه أول مره , لأن رقم المعالج الخاص بالجهاز سيكون مخزن بقاعدة البيانات
لكن السؤال , لو تم بيع البرنامج كحزمة تثبيت , سيكون البرنامج قابل للتثبيت على كل جهاز , لكون الحقل الخاص برقم المعالج بقاعدة البيانات فارغ افتراضيا , وسيعتبر أن تثبيته على أي جهاز مسموح
(26-10-18, 12:13 PM)dr.mostashar كتب : الفكرة جميلة في حال تم نقل البرنامج وقاعدة البيانات من نفس الجهاز الذي تم تثبيت البرنامج فيه أول مره , لأن رقم المعالج الخاص بالجهاز سيكون مخزن بقاعدة البيانات
لكن السؤال , لو تم بيع البرنامج كحزمة تثبيت , سيكون البرنامج قابل للتثبيت على كل جهاز , لكون الحقل الخاص برقم المعالج بقاعدة البيانات فارغ افتراضيا , وسيعتبر أن تثبيته على أي جهاز مسموح
بخصوص هذا يمكن معالجتها من خلال
عند فتح البرنامج بعد التثبيت
يتطلب كا تفعيل البرنامج واللى هيكون دور على صاحب البرنامج
التدخل من خلال teamviewer أو ارسال تواصل مع العميل حتى اتمام تسليمه كود التفعيل
وعند ادخاله يتم تعبئة الجدول بالكود المطلوب وهو كود المعالج لاضافته بقاعدة البيانات
تحياتى لك
وتمنياتى لك التوفيق
{وَقُل رَّبِّ زِدْنِي عِلْمًا}
[ كن على يقين من اعمالنا نخطئ ومن اخطائنا نتعلم ولذلك لا شي مستحيل ]
ساهم دائماً فى لكل من يقوم بالمساهمة
فى حل المشكلة او الاستفسار لديك فالجميع هنا يعمل
على مساعدة الاخرين لوجه الله وان تحتسب له اجر عند الله
(26-10-18, 12:13 PM)dr.mostashar كتب : الفكرة جميلة في حال تم نقل البرنامج وقاعدة البيانات من نفس الجهاز الذي تم تثبيت البرنامج فيه أول مره , لأن رقم المعالج الخاص بالجهاز سيكون مخزن بقاعدة البيانات
لكن السؤال , لو تم بيع البرنامج كحزمة تثبيت , سيكون البرنامج قابل للتثبيت على كل جهاز , لكون الحقل الخاص برقم المعالج بقاعدة البيانات فارغ افتراضيا , وسيعتبر أن تثبيته على أي جهاز مسموح
بخصوص هذا يمكن معالجتها من خلال
عند فتح البرنامج بعد التثبيت
يتطلب كا تفعيل البرنامج واللى هيكون دور على صاحب البرنامج
التدخل من خلال teamviewer أو ارسال تواصل مع العميل حتى اتمام تسليمه كود التفعيل
وعند ادخاله يتم تعبئة الجدول بالكود المطلوب وهو كود المعالج لاضافته بقاعدة البيانات
تحياتى لك
وتمنياتى لك التوفيق
أشكرك على الرد , لكن إن تم عمل فورمات لنظام التشغيل وإعادة تثبيت البرنامج مره آخرى ستفقد قاعدة البيانات كود المعالج وسيكون قابل للتثبيت والعمل مره آخرى على نفس الجهاز دون مشاكل , مازلت أرى أن رقم المعالج ليس له أي دور في حماية البرنامج إطلاقا أو أني لم أفهم دور رقم المعالج إلى الآن.
لكني أأيدك على أن يقوم صاحب البرنامج بارسال كود تفعيل مؤقت (صالح لمدة يوم مثلاً حسب خوارزمية رياضية معينة) يقوم من خلاله المستخدم بتفعيل البرنامج بهذه المدة , وإلا يتم طلب الرقم مره آخرى بعد اثبات شراء البرنامج