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

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

  1. ناقل

    ناقل

    الخبراء


    • نقاط

      8

    • Posts

      531


  2. د.كاف يار

    د.كاف يار

    الخبراء


    • نقاط

      6

    • Posts

      1,681


  3. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      6

    • Posts

      9,756


  4. ابو جودي

    ابو جودي

    أوفيسنا


    • نقاط

      6

    • Posts

      6,503


Popular Content

Showing content with the highest reputation on 31 أكت, 2021 in all areas

  1. بداية دعونا نتفق طالما فكرنا فى الموضوع ده ووصلنا له اذن نريد اضافة حماية لتطبيقاتنا طالما سوف نتحدث عن الحماية فلسوف يتم ان شاء الله العمل على افكار تطبيق ذلك خطوة بعد خطوة تدريجيا للارتقاء بالتوازى برفع مستوى الحماية مع الانتهاء من التطبيق مشروحا خطوة بعد خطوة تفصيليا 1- كل اسماء الجداول والنماذج والاستعلامات والموديول التى تخص المستخدمين ونظام الحماية سوف تبدأ بالمقطع Usys حتى يتعامل معها االاكسس على انها من كائنات النظام فيخفيها اليا عن المستخدم العادى 2- تشفير / فك تشفير البيانات التى تخص تطبيق نظام الصلاحيات وبما اننا سوف نبدأ بتلك الجزئية يستوجب تقديم الشكـر والامتنان لاستاذى الجليل ومعلمى القدير الدكتور @SEMO.Pa3x لاننى ان شاء الله سوف استخدم نظام التشفير الذى تقدم به استاذى الجليل اولا ـــــــــ الروتين المستخدم فى تشفير الكلمات والذى يتم وضعه فى موديول Function Encoder(ByVal strWordDecrypt As String) As String Dim iIndex As Integer Dim iEncoder As Integer Dim iEncodedVal As Integer Randomize Encoder = "" For iIndex = 1 To Len(strWordDecrypt) Do iEncoder = Int(98 * Rnd + 89) iEncodedVal = Asc(Mid(strWordDecrypt, iIndex, 1)) Xor iEncoder Loop While iEncodedVal = 1000 Or iEncodedVal < 99 Encoder = Encoder & Chr(iEncodedVal) & Chr(iEncoder) Next iIndex End Function ويتم استدعاءه كلاتى Encoder(text) حيث ان text هو النص المراد تشفيره أو انه اسم الحقل ( تيكست بوكس , كمبو بوكس ..) المراد تشفير القيم الموجوده بهم ------------------- العملية العكسية وهى فك تشفير الكلمات واعادتها الى وضعها الطبيعى الروتين المستخدم فى فك تشفير الكلمات والذى يتم وضعه فى موديول Function Decodeder(ByVal strWordEncrypt As String) As String Dim iIndex As Integer Dim iDecodedVal As Integer Decodeder = "" For iIndex = 1 To Len(strWordEncrypt) Step 2 iDecodedVal = Asc(Mid(strWordEncrypt, iIndex, 1)) Xor Asc(Mid(strWordEncrypt, iIndex + 1, 1)) Decodeder = Decodeder & Chr(iDecodedVal) Next iIndex End Function ويتم استدعاءه كلاتى Decodeder(EncoderText) حيث ان EncoderText هو النص المشفر المراد فك تشفيره أو انه اسم الحقل ( تيكست بوكس , كمبو بوكس ..) المراد فك تشفير القيم الموجوده بهم واخيرا المرفق Encrypt&Decrypt.mdb
    2 points
  2. السلام عليكم 🙂 جواب اخوي الدكتور حسين يأتي من رؤيته للاشكال في كل صورة ، وحسب رقم الصور 🙂 ولكن ، اذا اعدت تسمية المرفقات بأرقام او اسماء اخرى ، فهنا نحتاج الى طريقة ثابته لتأخذ جميع الاحتمالات ، اسماء اشكال وفواكه وبلدان وووووو ، فأحد الطرق ان يكون اسم الملف هو يشرح محتواه ، ولكن الطريقة الاصح هي ان تضيف معلومات اضافية في MetaData الصورة (البيانات الوصفية) عن طريق البيانات في EXIF الصورة ، في احد الحقول ، مثل tag ، ويمكنك رؤية وتغيير هذه البيانات عن طريق: متصفح الملفات ، ثم تنقر على ملف الصورة بالزر اليمين ، ثم تفاصيل ، ثم تفاصيل : . وهذه الاضافات يمكنك اضافتها في جميع انواع ملفات الصور (jpg , bmp , tiff ...) ، ماعدا صيغة png القديمة. وتستطيع استعمال كود لقراءة هذه البيانات ، مثل: https://docs.microsoft.com/en-us/previous-versions/tn-archive/ee176615(v=technet.10)?redirectedfrom=MSDN او https://www.devhut.net/get-image-exif-properties-using-vba-and-powershell/ جعفر
    2 points
  3. السلام عليكم إخواني الأعزاء .. ومع الدرس الثاني من سلسلة مهارات في أكسس .. صندوق قائمة لتعديل البيانات List Box آرائكم وتوجيهاتكم هي خير ما تتفضلون به علي .. متمنيا لكم دوام التوفيق .. مشاهدة ممتعة أتمناها لكم .. ‏‏ListBox - Lesson.accdb
    2 points
  4. كدة .... عند اضافة البيانات ..... عند اضافة عدد الشهور .... يظهر تاريخ النهاية تلقائيا .... file.rar
    2 points
  5. ضع ازرار لضغط و اصلاح قاعدة البيانات و ضع فيه الكود التالي Dim vbscrPath As String vbscrPath = CurrentProject.Path & "\CRHelper.vbs" If Dir(CurrentProject.Path & "\CRHelper.vbs") <> "" Then Kill CurrentProject.Path & "\CRHelper.vbs" End If Dim vbStr As String vbStr = "dbName = """ & CurrentProject.FullName & """" & vbCrLf & _ "resumeFunction = ""ResumeBatch""" & vbCrLf & _ "Set app = CreateObject(""Access.Application"")" & vbCrLf & _ "Set dbe = app.DBEngine" & vbCrLf & _ "Set objFSO = CreateObject(""Scripting.FileSystemObject"")" & vbCrLf & _ "On Error Resume Next" & vbCrLf & _ "Do" & vbCrLf & _ "If Err.Number <> 0 Then Err.Clear" & vbCrLf & _ "WScript.Sleep 500" & vbCrLf & _ "dbe.CompactDatabase dbName, dbName & ""_1""" & vbCrLf & _ "errCount = errCount + 1" & vbCrLf & _ "Loop While err.Number <> 0 And errCount < 100" & vbCrLf & _ "If errCount < 100 Then" & vbCrLf & _ "objFSO.DeleteFile dbName" & vbCrLf & _ "objFSO.MoveFile dbName & ""_1"", dbName" & vbCrLf & _ "app.OpenCurrentDatabase dbName" & vbCrLf & _ "app.UserControl = True" & vbCrLf & _ "app.Run resumeFunction" & vbCrLf & _ "End If" & vbCrLf & _ "objFSO.DeleteFile Wscript.ScriptFullName" & vbCrLf Dim fileHandle As Long fileHandle = FreeFile Open vbscrPath For Output As #fileHandle Print #fileHandle, vbStr Close #fileHandle Dim wsh As Object Set wsh = CreateObject("WScript.Shell") wsh.Run """" & vbscrPath & """" Set wsh = Nothing Application.Quit
    2 points
  6. وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به استاذنا @Eng.Qassim وله الشكر وبالتعديل الذي قام بارفاقه تفضل اخي الكريم إدارة الاختبارات والقبول.rar تحياتي
    2 points
  7. شكرا علي كلامك المشجع نعم حاولت ولم أستطع وربما قد نالني الارهاق ولهذا أعدك أن أستمر في المحاولة غداً والله المستعان
    1 point
  8. بل عدله انت ... وقم مشكورا بنشره هنا .... لتتعلم الطريقة .... نعم بالمحاولة تستطيع ذلك وبالنظر في التعديلات السابقة تستطيع معرفة التعديل المطلوب .... دائما وكنصيحة لك حاول قراءة الكود ... ومع التكرار تصبح استاذا لي ... بارك الله فيك ... واذا لم تصل لنتيجة . ابشر ...
    1 point
  9. السلام عليكم 🙂 رجاء توضيح طلبك ، وبمثال لوسمحت 🙂 جعفر
    1 point
  10. بارك الله فيك اخي الكريم ..... كفيناك المؤنة .... هههههه
    1 point
  11. السلام عليكم 🙂 كان هذا لصيغة mdb ، وليس لصيغة accdb 🙂 كلامي عن البرنامج وليس محرر الاكواد. وبالاضافة الى شرح اخوي ابوجودي واخوي ناقل ، هذه احد طرق الحماية: جعفر
    1 point
  12. فيك الخيـــــــر استاذى الجليل واخى الحبيب استاذ @ناقل والله بحثت عنه وما قدرت احصل الموضوع وكنت ناوى اعيد الشغل من تانى بس اليوم كنت مشغول بشئ كنت حابب انتهى منه اللأول الله يرضى عليك .. جزاكم الله خيـــرا
    1 point
  13. تابع هذا الموضوع ومواضيع اخرى كثيرة مشابهة للحماية
    1 point
  14. اولا تحت امرك ان شاء الله فى اى وقت ثانيا وضعت لك رابط الموضوع لانه يحتوى على كل الافكار التى تريدها ان شاء الله 1- تشفير البيانات باسلوب ابسط على طريقة استاذى الجليل الدكتور @SEMO.Pa3x جزاه الله خيرا 2- فكرتى المتواضعة تحويل الصلاحيات لتخص مجموعة مستخدمين وليس فرد واحد 3- امكانية تسجيل اى مستخدم لبيانات الدخول التى يريدها وتنتظر التفعيل من الادمن 4- بعد موافقة الادمن على تفعيل المستخدمين وادراجة صمن مجموعة الصلاحيات التى يريد المستخدم يستطيع المستخدم الولوج ببياناته ده اللى انا فاكرة ولانى فى عجالة من امرى الان وضعت لكم الموضوع قد تجدون فيه زيادة عما تريدون او نقصان ولكن بعد اطلاعكم عليه ان شاء وفى وقت لاحق بامر الله اقوم بالتعديل على ما تريدون
    1 point
  15. تمام أخي هذا ما لم أنتبه له شكرا جزيلا لكرمك
    1 point
  16. تفضل .... لاني كنت مقفل كود عند الفتح ..... encoder replacement.rar
    1 point
  17. متمييز دائما بحثت و بحثت على مثال يكون سهل الفهم و لم اجد افضل من مثالك شكر ا لك و جعل الله ما تقدمه للأمة في ميزان حسناتك
    1 point
  18. السلام عليكم 🙂 الجواب المختصر ، لا يمكنك توسيط عنوان النموذج ، في الشريط اعلى النموذج. نظرياً ، هذا الشريط يقبل 2048 حرفا فقط ، وهذا لا يُمثل عرض النموذج ، وعملياً ، لم يأخذ اكثر من 127 حرفا ، اما الاحرف الباقية فهي تختفي 😥 جعفر
    1 point
  19. فقط المسألة وما فيها هو تقديم وتاخير لحقل التشفير و كود التشفير ..... انظر الصورة مع مراجعة التعديلات في المرفق السابق لعلك تجد ضالتك ... كان بامكاني تعديل اسم الفانك وتعديل مواقع حقل التشفير وكود التشفير وانتهى الامر ولكن تعمدت تعديل الاكواد وترك الفانك مكما هو لتلاحظ التعديل ....
    1 point
  20. استخدم التنسيق الشرطي حدد الخلية B1 وانتقل الى التنسيق الشرطي واختار الخيار الاخير وانسخ المعادلة ومن تنسيق حدد لون التعبئة =D1<>""
    1 point
  21. تفضل المستخدم ناقل والباس 123 encoder replacement.rar
    1 point
  22. فهمت من هذا الاستفسار المقتبس من كلامكم أن لديك عمل أخر تفكر في تعديله ليناسب المطلوب أو تبحث عنه في مكتبتك ولهذا أنتظرت لأن ملف هذا الموضوع بشكله الحالي لا يسمح للمستخدم الجديد بإنشاء حساب له بدون الدخول كمدير أولا وعمل ذلك من خلاله فقط
    1 point
  23. 1 point
  24. استبدل الكود في حدث عند الفتح بالتالي On Error Resume Next If DCount("*", "UPDATES", "[Select]=False") <> 0 Then Call NewUPDATE Else Kill CurrentProject.Path & "\UpdateFile.cmd" End If
    1 point
  25. بإذن الله يكون هذا الكود هو المطلوب تم استعمال dateadd لاضافة الايام والشهور والاعوام لتاريخ معين واستعمال دالة datedif لحساب الفرق بين تاريخين Private Sub CommandButton1_Click() TextBox2 = DateAdd("d", Val(TextBox6), TextBox1) TextBox2 = DateAdd("m", Val(TextBox5), TextBox2) TextBox2 = DateAdd("yyyy", Val(TextBox4), TextBox2) TextBox3 = DateAdd("m", (Val(TextBox4) * -3), TextBox2) TextBox7 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""md"")") TextBox9 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""ym"")") TextBox8 = Evaluate("DATEDIF(" & CDbl(Date) & "," & CDbl(CDate(TextBox3)) & ", ""y"")") MsgBox "Done by mr-mas.com" End Sub Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean) TextBox1.Text = Format(TextBox1, "yyyy/mm/dd") End Sub Private Sub TextBox2_Change() TextBox2.Text = Format(TextBox2, "yyyy/mm/dd") End Sub Private Sub TextBox3_Change() TextBox3.Text = Format(TextBox3, "yyyy/mm/dd") End Sub بالتوفيق
    1 point
  26. السلام عليكم يمكن استخدام دالة space لاضافة مسافات قبل العنوان غير الرقم 25 الى الرقم الذي تريد Me.Caption = Space(25) & "نموذج البداية" تحياتي
    1 point
  27. السلام عليكم 🙂 ليش يا جماعة المراسلة بالايميل (مخالف لقوانين المنتدى) ، ضع كل شيء هنا حتى يستفيد الجميع 🙂 جعفر
    1 point
  28. 1 point
  29. وعليكم السلام انظر للمرفق اخي إدارة الاختبارات والقبول.accdb
    1 point
  30. وعليكم السلام ورحمة الله وبركاته في كود استعراض وفتح قاعدة البيانات اضف الامتداد للفلتر strFilter = ahtAddFilterItem(strFilter, "Access files (*.accdb, *.mdb)", "*.accde;*.mde") او يمكنك عند استعراض قاعدة البيانات كتابة *.* لعرض جميع الملفات في المجلد تحياتي
    1 point
  31. 1 point
×
×
  • اضف...

Important Information