اذهب الي المحتوي
أوفيسنا

نجوم المشاركات

  1. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      8

    • Posts

      6,818


  2. SEMO.Pa3x

    SEMO.Pa3x

    الخبراء


    • نقاط

      7

    • Posts

      540


  3. kaser906

    kaser906

    الخبراء


    • نقاط

      3

    • Posts

      1,411


  4. ابوآمنة

    ابوآمنة

    الخبراء


    • نقاط

      2

    • Posts

      713


Popular Content

Showing content with the highest reputation on 10 أبر, 2019 in all areas

  1. السلام عليكم, في سنة 2017 قمت بكتابة كلاس بسيط لحماية برنامجي ولضمان برنامجي لا يعمل في غير كومبيوترات في حاله بيعه. مميزات الكلاس: 1- قفل قاعدة البيانات على ( رقم الهارد , البروسيسور , المذربورد , الماك أدريس ) 2- (استحاله) فك النماذج والتقارير في حال عدم تجاوزك لنموذج ( تسجيل الدخول ) ببساطة ستقول يمكنني العثور على باسورد القاعدة داخل الجدول ( الطريقة المعتادة لدينا جميعا في انشاء نموذج تسجيل دخول ). قبل كل شي ليكن لدينا مثلا جدول اسمة ( tbl_Login ) و نموذج اسمه ( frm_Login ) الجدول لتخزين اسم المستخدم وكلمة المرور والنموذج لعمل تسجيل الدخول عند ذهابنا للجدول ( tbl_Login ) ، سوف نحصل على باسورد مشفر من الجدول لو كان الباسورد مثلا ( 313 ) فإنك ستحصل على ( 701D6068 ) 2- عندما نقوم بتسجيل الدخول في النموذج سيقوم البرنامج بأخذ كلمة السر المدخلة ويقوم بتشفيرها ثم يقوم بمطابقتها مع الباسورد الموجود في الجدول اذا كان الباسورد المُدخل يطابق الجدول سيكتب قيمة معينة runtime ويقوم بازالة جميع القيود من النماذج والتقارير. اولا: كلاس الحماية Option Compare Database '----------------------------------------------------- ' Protection Module Coded By Hassanein Hirz Aldeen (SEMO.Pa3x) ' Date 26/11/2017 ' All rights reserved. copyright © 2017 '----------------------------------------------------- Public SEMO As String Function SEMO_GET() SEMO = SEMO SEMO_GET = SEMO End Function Function PR() As Boolean PR = False 'False=Disabled , True=Enabled End Function Function HWND_ID() HWND_ID = "3C3F4825" 'Your HWID End Function Function HWND_MSG() HWND_MSG = "...ليست لديك صلاحيات كافية لإستخدام هذا الاجراء" End Function Function KEY_ENDE() KEY_ENDE = "PA$X" End Function Function HWND_GET() Set root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2") Set disks = root.execquery("select * from win32_logicaldisk") For Each disk In disks If disk.volumeserialnumber <> "" Then HWND_GET = disk.volumeserialnumber Exit For End If Next End Function Function HWND_PROTECTION() Set root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2") Set disks = root.execquery("select * from win32_logicaldisk") For Each disk In disks If disk.volumeserialnumber <> "" Then HWND_PROTECTION = disk.volumeserialnumber Exit For End If Next If HWND_ID = HWND_PROTECTION Then HWND_PROTECTION = "True" Else HWND_PROTECTION = "False" End If End Function 'Code contained within module named mdlforencryptionanddecryption Public Function XORDecryption(CodeKey As String, DataIn As String) As String Dim arkdata1 As Long Dim strDataOut As String Dim intXOrValue1 As Integer Dim intXOrValue2 As Integer For arkdata1 = 1 To (Len(DataIn) / 2) 'The first value to be XOr-ed comes from the data to be encrypted intXOrValue1 = Val("&H" & (Mid(DataIn, (2 * arkdata1) - 1, 2))) 'The second value comes from the code key intXOrValue2 = Asc(Mid(CodeKey, ((arkdata1 Mod Len(CodeKey)) + 1), 1)) strDataOut = strDataOut + Chr(intXOrValue1 Xor intXOrValue2) Next arkdata1 XORDecryption = strDataOut End Function Public Function XOREncryption(CodeKey As String, DataIn As String) As String Dim arkdata1 As Long Dim strDataOut As String Dim temp As Integer Dim tempstring As String Dim intXOrValue1 As Integer Dim intXOrValue2 As Integer For arkdata1 = 1 To Len(DataIn) 'The first value to be XOr-ed comes from the data to be encrypted intXOrValue1 = Asc(Mid$(DataIn, arkdata1, 1)) 'The second value comes from the code key intXOrValue2 = Asc(Mid$(CodeKey, ((arkdata1 Mod Len(CodeKey)) + 1), 1)) temp = (intXOrValue1 Xor intXOrValue2) tempstring = Hex(temp) If Len(tempstring) = 1 Then tempstring = "0" & tempstring strDataOut = strDataOut + tempstring Next arkdata1 XOREncryption = strDataOut End Function الاستخدام لكل النماذج والتقارير اكتب في حدث Form_Load Option Compare Database Private Sub Form_Load() On Error Resume Next If HWND_PROTECTION = "False" Then MsgBox HWND_MSG, vbCritical, "عملية خاطئة" For i = 0 To Controls.Count - 1 Dim X As Control Set X = Me.Controls.Item(i) X.Visible = False Next DoCmd.Close DoCmd.CloseDatabase DoCmd.Quit End If If Protection.SEMO_GET = "SEMO" = False Then MsgBox HWND_MSG, vbCritical, "عملية خاطئة" For i = 0 To Controls.Count - 1 Dim XS As Control Set XS = Me.Controls.Item(i) XS.Visible = False Next DoCmd.Close DoCmd.CloseDatabase DoCmd.Quit End If End Sub الان عندما تريد اعطاء القاعدة لشخص ما قم باعطاءه اولا ملف الـ VBS هذا '----------------------------------------------------- ' ReCoded By Hassanein Hirz Aldeen (SEMO.Pa3x) ' Date 26/11/2017 ' All rights reserved. copyright © 2017 '----------------------------------------------------- ' Get clipboard text Set objHTML = CreateObject("htmlfile") Set Ws = CreateObject("WScript.Shell") Clipboardtext = objHTML.ParentWindow.ClipboardData.GetData("text") sText = HWND_GET 'Set Clipboard Ws.Run "mshta.exe ""javascript:clipboardData.setData('text','" & Replace(Replace(sText, "\", "\\"), "'", "\'") & "');close();""", 0, True MsgBox "Copied!" Function HWND_GET() Set root = GetObject("winmgmts:{impersonationlevel=impersonate}!\\.\root\cimv2") Set disks = root.execquery("select * from win32_logicaldisk") For Each disk In disks If disk.volumeserialnumber <> "" Then HWND_GET = disk.volumeserialnumber Exit For End If Next End Function وظيفة هذا الملف يقوم باستخراج ( رقم الهارد , البروسيسور , المذربورد , الماك أدريس ) ثم ينسخه بعدما يشغله سيقوم العميل باعطاءك هذا الرقم لكي تقوم انت بدورك بوضعه داخل الكلاس في المنطقة Function HWND_ID() HWND_ID = "Your HWID" End Function استبدل كلمة ( Your HWID ) بالرقم الذي سيعطيه لك العميل. ثم بعد ذلك قم بحفظ القاعدة بصيغة ( ACCDE ) واتحدا اي شخص يفتحها مرة اخرى: لكي تفتح النماذج والتقارير عليك بتخطي نموذج تسجيل الدخول ارفقت لكم قاعدة محمية وقاعدة بدون حماية مع ملف الـ VBS الذي يستخرج ارقام قطع الجهاز ويقوم بنسخها،، اتمنى لكم الفائدة جميعاً اهداء الموضوع الى مُعلمي الرائع @jjafferr حسنين Login_SEMO_Pa3x.rar
    2 points
  2. السلام عليكم ورحمة الله وبركاته إلى : الأخوة الزملاء ..................... وفقكم الله أقدم لكم هدية متواضعة عبارة عن ( سند قبض وصرف ) اقتطعتهما من أحد برامجي . ولا تنسو أن تدعو لأبي بالشفاء العاجل ولجميع المسلمين ،،، السندات 2.1.rar
    2 points
  3. جاوبتك على النقاط التي طرحتها ولم اكلف نفسي الاجابة على شيْ لم تستفسر عنه وتطرحه ::بالتوفيق::
    2 points
  4. غالبا قام صاحبه باغلاقة لحماية افكارة وتعبه او انه يتكسب منه رزقه فهل نعتدى على ما لا نملك بغير حق
    2 points
  5. تفضل قمت بكتابة مثال بسيط لك. حسنين SEMO_Pa3x_Color.accdb
    2 points
  6. السلام عليكم 🙂 الدقة: جميع الاستعلامات لها نفس الدقة في تصفية/فرز البيانات ، السرعة: الاستعلام العادي من خلال معالج الاستعلام كان يمتاز عن بقية انواع الاستعلامات (وهنا لا اتكلم عن Recordset) ، بأن الاكسس كان يعمل له Compile وايضا يعمل له خطة عمل ، مما يجعله اسرع من بقية الانواع ، حيث انه يكون جاهزا للعمل بمجرد فتحه ، اما الآن ، وبوجود الاجهزة الجديدة والسريعة ، فبقية انواع الاستعلام ، تقوم بعمل Compile بسرعة عند استعمالها ، فلا نلاحظ الفرق في سرعة بينهم. ولكن ، هذا كله يعتمد على طريقة عمل الاستعلام ، بغض النظر عن نوعه 🙂 واهم شيء لجعل الاستعلام يعمل بسرعة هو ، عمل فهرسة (في الجداول) للحقول التي بها معايير ، او الحقول التي بها ربط بين الجداول. جعفر
    1 point
  7. السؤال غير واضح وانت حاطط كل الارقام اي رقم غير موجود؟ وماذا تريد أن يحدث؟
    1 point
  8. مشاركة مع الاستاذ حسنين يمكنك تشغيل الملف بدون تدخل منك وعمل صلاحيات اذا قمت بتخزيم البرنامج عن طريق اداة التخزيم التي تأتي مع الاكسس فهوسيقوم بالنيابة عنك بإعطاء الصلاحيات للكتابة والقراءة عن طريق تسجيل ملفات الريجستري ::بالتوفيق::
    1 point
  9. يعطيط العافية استاذ سليم حققت لي ما احتاجه
    1 point
  10. لم سئ اليك بل احاول مساعدتك اعتذر اليك اخى الحبيب
    1 point
  11. انت فوق مستوى الشبهات ولم ستحتاج للاعتداء على جهد الاخرين اسال الله ان يزيدكم علما لم اقصد توجيه الحديث اليك مطلقا استاذى ولكن لاخى السائل فقط فلما دار فى خلدة من ضرب حماية لعمل شخص اخر هو اعتداء منه وفقط انا له ناصح امين هذا حقه على ان اقدم اليه النصح
    1 point
  12. غالبا ما احتاج طريقة تفكيك الحمايات ليس للعبث وسرقة جهد المبرمج وانما لتحليل الحماية و لصناعة حماية اقوى منها او على الاقل تظل صامدة لفترة طويلة. حسنين
    1 point
  13. وعليكم السلام انظر الرفق اعمار الذمم.accdb
    1 point
  14. اولا النقاط التى افكر بها طبعا القاعدة سوف تكون مقمسة الى قاعدة امامية واخرى خلفية - الحصول على التاريخ والذى سوف يتم الحصول عليه من جهاز القاعدة الخلفية دائما فلا احبذ كتابته يدويا لعدم التلاعب - البدء بالترقيم سنويا على ان يكون للصادر ترقيم مخصص غير الوارد وكل منهم يكوم على الشكل الاتى الوارد >--> و - 2019/1 | الصادر >--> ص - 2019/1 -الادارة دائما تنقسم الى الاتى ( الادارة العيا - ادارة الانتاج - ادارة دعم الانتاج ) اريد ان يتم الحفظ للوثائق على هذا الاساس يتم احيانا التحويل للخطابات بيم الادارات المختلفة - هناك اقسام داخلية لكل ادراة يتم التحويل من الادارة اليهم والعكس - بناء على النقطتين السابقتين سوف يكون لكل قسم قاعدة لا يرى الا المراسلات المحوله اليه فقط والتى لم تغلق بالرد منه وكذلك كل مدير يرى مراسلات ادراته فقط الداخلية والخارجية - امكانية ارتباط الصادر بالوارد او العكس ان تطلب الامر ذلك وذلك ان اردنا متابعة الموضوع من بدايته الى نهايته مرورا بكل وثيقة تم تصديرها او وردت تخص هذا الموضوع -متابعة الوثائق التى تحتاج وتطلب متابعة خطوة بخطوة مع وجود الية التذكير دائما بما يحتاج الى المتابعة -توحيد الجهة المرسل اليها او الوارد منها لكل من الصادر او الوارد فتكتب الجهة داخل القاعدة مرة واحدة - الحفظ والارشفة بالتكويد والترميز لسخولة الوصول الى الوثائق المادية من امكان الحفظ بسرعة وسهولة - الحفظ للوثائق وارشقتها برمجيا بمسحها ضوئيا بالترميز pdf -انشاء قاعدة خلفية سنويا برقم العام فيكون لكل عام قاعدة تخصة ويمكن الارتباط باى قاعدة لاى عام مسبق بدون تدخل من المستخدم - طبعا الباك اب والاسترجاع هذا ما يجول بخاطرى الان اولا هل نسيت طرح شئ او هل نحتاج الى اضافات غير ما ذكرتها للوصول الى اعلى درجات الكمال قبل البدء فى التنفيذ بناء على ضوء ما تم سرده او سوف يتم طرحه
    1 point
  15. حياك الله اخوي حسنين ، واهلا وسهلا بك 🙂 وشكرا الموضوع المميز 🙂 جعفر
    1 point
  16. @وائل أبو عبد الرحمن تفضل طلبك عزيزي. بالتوفيق. حسنين بحث.accdb
    1 point
  17. اهلا عزيزي, قاعدة البيانات المرفقة كانت للتوضيح لا اكثر. يمكنك عمل زر او اي شي تريده. بكل بساطة يمكن عمل يوزر في الجدول اسمه مثلا الدعم الفني وسادع برنامجي كل ما قمت بتشغيله يتحقق من هذا اليوزر فان لم يجده ينشأه مرة اخرى او قمت بتعديل كلمة المرور الخاصة به سوف يقوم بارجاع الاصلية. يمكنك الحصول عليها بتمرير كلمة السر الموجودة في الجدول على الفنكشن الذي يسمى XorDecrypt وسيقوم هو بدوره بأرجاع الباسورد مفكوك التشفير يمكنك عرضه بأي طريقة تحب مثلا MessageBox او في TextBox. حسنين لا شيء يخلوا من الحماية وان لم تستخدمها اليوم ستستخدمها غدا. ليس من مصلحة مايكروسوفت او اي شركة اخرى ان تصمم حماية لا يمكن التغلب عليها والا ستخسر الشركة ولن تبيع شيئاً اعطيك مثال بسيط: بأستطاعة شركات الحماية مثلا Avast وغيرها التي تقوم بأنتاج الاف النسخ من مضادات الفايروسات ( انتي فايروس ) بأستطاعتها ان تنهي من الوجود شيئا يسمى فيروس او تروجان او دودة... الخ لكن ما الثمن لذلك؟؟ لن تبيع ولا منتجاً واحداً وستخسر الشركة لذلك من مصلحتها ان تسمح للفايروسات والهاكرز بالاختراقات وغيرها لكي تبقى هذه الشركة في الساحة لتبيع منتجاتها حسنين
    1 point
  18. استاذ @صالح حمادي كذا تمام وبرافو عليك وهي التايمر كانت تدور في مخيلتي تسلم وهذه احد ابداعاتك انا حاولت ان يكون هناك حدث عند المفتاح لاسفل وحدث عند المفتاح لاعلى ولكن مازبطتش عالعمود مشكور جدا وهل يمكن تطبيق نفس الفكرة هنا مع كل الشكر والتقدير
    1 point
  19. أستاذ @أبو عبدالله الحلوانى أشكرك على التوضيح والبيان.. وقد أصبت.. بارك الله فيك.. وذب الله عنك يوم القيامة.. محبك.. أبو إبراهيم
    1 point
  20. تبارك الله فيك اخي محمد شكرا لمساعدتك المطلوب تمام
    1 point
  21. لا أعرف كيف يمكن للكلمات أن تعبر عما يجول بنفسي فان كلمات الشكر قليلة في حقكم لروعة أخلاقكم وتميزكم الملحوظ وحضوركم الراقي وجهودكم العظيمة.يقف قلمي وقلبي وأنا قبلهم احتراما وتقديرا وامتنانا لكم لسعة صدركم وتفانيكم وتعاطفكم والمسار الذي اتخذتموه في ايصال المعلومة العلمية لكل من يحتاجها .......... فاسال الله العلي الاعلى ان لا يحرمنا من إطلالتكم المشرقة فأنتم فخر المنتدى لكم شكري وعظيم امتناني وتقديري واحترامي اخي الفاضل💖💖💖💖 علي محمد علي 💖💖💖💖 وشكري العام لجميع الاعضاء والمشرفين في المنتدى..💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖
    1 point
  22. لا حول ولا قوة إلا بالله العلي العظيم الأمر لم يكن يحتاج لكل هذه السطور التي كلفت نفسك بكتابتها بل كان أولي بك المساعدة إن كنت تستطيعها وحسب
    0 points
  23. يا جماعة تنصحونا بالبحث والتجربة وبعد البحث وعند محاولة التجربة والاستفسار عما لا نفهمه فيها ونتوقف عنده لا نجد إجابة نريد المساعدة رجاء
    0 points
×
×
  • اضف...

Important Information