منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
منع النسخ - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم أسئلة واستفسارات الأعضاء - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=94)
+--- قسم : قسم Visual Basic 6 وما قبله (http://vb4arb.com/vb/forumdisplay.php?fid=167)
+--- الموضوع : منع النسخ (/showthread.php?tid=9833)

الصفحات: 1 2 3 4


منع النسخ - اسلام الكبابى - 29-07-13

[SIZE=2]هل توجد أى طريقة أو كود معين أمنع بها أى شخص من نسخ برنامجى

وهل توجد أى طريقة أو كود معين أمنع بها أى شخص أن يستخدم برنامجى أكثر من 4مرات مثلآ


ولكم ألف شكر
[/SIZE]


منع النسخ - samee119485r - 30-07-13

اخي الكريم تفضل هاذا الكود

لمنع تشغيل البرنامج اكثر من نسخة

وهوه يعتمد على الرجستري في حفظ قمة المتغير X بحيث يزيد واحد على قيمته عند كل تشغيله للبرنامج الى ان يصل

قيمة المتغير الى العدد الذي تحدده انت وانا هنا حددت الرقم 4
الذي يوجد في الداله IF والتي تحمل ايضا شرط اذا وصل عدد المتغير X الى 4

اضهري رساله للمستخدم تخبره بأنتهاء المده التجريبيه والخروج من البرنامج


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



Dim X As String

Private Sub Form_Load()
On Error Resume Next
X = GetSetting(App.Title, "Settings", "SaveInX")


If X = "" Then

X = "0"

End If

If X >= "4" Then
MsgBox "لقد نفذت المدة التجريبية", , "النهايه"

End

End If
X = X + 1
End Sub


Private Sub Timer1_Timer()
SaveSetting App.Title, "Settings", "SaveInX", Trim(X)
End Sub


منع النسخ - derbaliammar - 30-07-13

ضع هذا الكود في الـ Main الدالة الرئيسية للبرنامج حيث يبدأ منها التشغيل أو في الحدث Load للفورم الأول في التشغيل ليتم الاختبار :
كود :
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



منع النسخ - اسلام الكبابى - 31-07-13

[SIZE=4] ألف شكر لكل منكما
[/SIZE]


منع النسخ - اسلام الكبابى - 01-08-13

إقتباس :ضع هذا الكود في الـ Main الدالة الرئيسية للبرنامج حيث يبدأ منها التشغيل أو في الحدث Load للفورم الأول في التشغيل ليتم الاختبار
لم يعمل هذا الكود لا في الـ Main الدالة الرئيسية للبرنامج ولا في الحدث Load للفورم
اعترض البرنامج عند عمل الRUN وأرسل رسالة خطأ

ان كنت جربت هذا الكود بنفسك فليتك ترفق برنامج بسيط بحيث يمكن تشغيله ولكن لايمكن نسخه
مثلا برنامج من فورم واحدة يقوم بجمع رقمين
PHP كود :
Private Sub Command1_Click()
70100
B
Text1
.Text X
End Sub 



منع النسخ - اسلام الكبابى - 01-08-13

إقتباس :اخي الكريم تفضل هاذا الكود

لمنع تشغيل البرنامج اكثر من نسخة
اشتغل البرنامج بهذا الكود ولكنه لم ينفذ المطلوب
قمت بعمل الrun أكثر من 4 مرات واستمر البرنامج دون أن يعترض"لقد نفذت المدة التجريبية"

ان كنت جربت هذا الكود بنفسك فليتك ترفق برنامج بسيط بحيث يمكن تشغيله 4 مرات فقط وبعدها يعترض"لقد نفذت المدة التجريبية"
مثلا برنامج من فورم واحدة يقوم بجمع رقمين
PHP كود :
Private Sub Command1_Click()
70100
B
Text1
.Text X
End Sub 



منع النسخ - اسلام الكبابى - 04-08-13

[INDENT] [SIZE=2]أليس لأى من المشكلتين أى حل

لا مشكلة منع نسخ برنامجى

ولا مشكلة منع استخدمه أكثر من 4مرات مثلآ


ولكم ألف شكر
[/SIZE]
[/INDENT]


منع النسخ - samee119485r - 05-08-13

اخي الكود شغال ميه الميه

تفضل المشروع

تحياتي


منع النسخ - اسلام الكبابى - 05-08-13

لك ألف شكر

ولكن ليتك توضح لى خطوات عملك لهذا البرنامج
لأنى فتحت برنامجآ من برامجى وأضفت للفورم Timer1 وأضفت للكود هذا الكود المرفق فى برنامجك
فلم يلتزم بأربع مرات فقط كما التزم بها فى برنامجك

ولك ألف شكر



منع النسخ - samee119485r - 05-08-13

اخي الكريم انا شرحت الكود في الأعلى

حتمال انك لما اضفت الكود الى برنامجك لم تقم بترتيب الكود او حصل معك خطأ ما


فلو تضع لي مثال اقوم بتعديل عليه لكي تتضح لك الصوره

تحياتي