-
Posts
10050 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
408
jjafferr last won the day on يناير 22
jjafferr had the most liked content!
السمعه بالموقع
9472 Excellentعن العضو jjafferr

البيانات الشخصية
-
Gender (Ar)
ذكر
-
Job Title
مهندس مدني مستقيل
-
البلد
سلطنة عُمان
اخر الزوار
-
تعديل كود يعمل على اوفيس 32بت ولا يعمل على اوفيس 64 بت
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
ولكن هذا ليس من تعديلي انا ، هذا الـ api للنواة 64بت -
تعديل كود يعمل على اوفيس 32بت ولا يعمل على اوفيس 64 بت
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
نعم ، ولكنه يعتمد api النواة : -
السلام عليكم المعذرة لم اقرأ التفاصيل وجربت البرنامج على حاسبتي: اكسس 32بت حصلت على هذا الخطأ: . فاستغربت انه دخل في كود 64بت !! . فقمت بتعديل جميع VBA7 في البرنامج الى VBA7 And Win64 ، فاشتغل البرنامج : #If VBA7 And Win64 Then . وعند اغلاق البرنامج ، قفل الاكسس ما كان يختفي : . فعملت التغيير على جميع ، وانحلت هذه القضية كذلك: بدلا عن DoCmd.close الى Application.close . في بعض الاحيان كان الثعبان يعمل وميض ، ولكنه في معظم الوقت كان يشتغل تمام. ومرفق النسخة بعد هذه التعديلات. Plants VS Snake.zip
-
تعديل كود يعمل على اوفيس 32بت ولا يعمل على اوفيس 64 بت
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
الطريقة الاخرى هي ، اضافة PtrSafe في السطر الثالث فقط ، وبدون تغيير الدالة DialogColor ، هكذا : '#If VBA7 Then ' Private Declare PtrSafe Sub ChooseColor Lib "msaccess.exe" Alias "#53" (ByVal Hwnd As Long, rgb As LongPtr) '#Else Private Declare PtrSafe Sub ChooseColor Lib "msaccess.exe" Alias "#53" (ByVal Hwnd As Long, rgb As Long) '#End If Function DialogColor(rgb As Long) As Long Call ChooseColor(Application.hWndAccessApp, rgb) DialogColor = rgb End Function 1643.1.FileDialog.accdb -
تعديل كود يعمل على اوفيس 32بت ولا يعمل على اوفيس 64 بت
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
اليك كودك بعد التصحيح: بدلا عن Function DialogColor(rgb As Long) As Long Call ChooseColor(Application.hWndAccessApp, rgb) DialogColor = rgb End Function استعمل #If VBA7 Then Function DialogColor(rgb As LongPtr) As LongPtr #Else Function DialogColor(rgb As Long) As Long #End If Call ChooseColor(Application.hWndAccessApp, rgb) DialogColor = rgb End Function . والسبب: عند استعمال 64بت ، المتغير rgb (لاحظ انه المتغير رقم 2 في الدالة ChooseColor) والدالة ChooseColor يصبحون LongPtr ، وعليه ، وفي الدالة DialogColor ، فاننا ننادي الدالة ChooseColor ، والمتغير رقم 2 هو rgb ، فيجب ان يكون نفس نوع rgb الـ 64بت ، وهو LongPtr ، وعند اعطائنا قيمة rgb الى DialogColor (في المعادلة DialogColor=rgb) ، فيجب ان DialongColor تصبح LongPtr ايضا. لذلك في حالة 64 بت ، يجب استعمال Function DialogColor(rgb As LongPtr) As LongPtr 1643.FileDialog.accdb -
فتح نموذج فرعى لاضافة بيانات جديدة او عرض القديمة
jjafferr replied to jo_2010's topic in قسم الأكسيس Access
السلام عليكم يمكنك رفع الملف كما هو ، ويمكنك رفع الملف بضغطه ببرامج winRar او winZip ، والافضل في الضغط هو صيغة 7z. ويمكنك انزال برنامجه المجاني من هنا : https://www.7-zip.org/ ويمكنك رفع الملف على اي من مواقع رفع الملفات على الانترنت ، و ارفاق الرابط في الموضوع ، ويمكنك رفع الملف في حسابك في Google Drive ومشاركة الرابط هنا. -
عند الطباعة لا تظهر البيانات اللون الاصفر
jjafferr replied to ahmed23652's topic in قسم الأكسيس Access
تم ارفاق المرفق في المشاركة الاولى للاخ احمد. المرفق من موضوع آخر للاخ احمد في مكتبة الموقع -
سؤال : لماذا تكون بعض التطبيقات بطيئة بعد تطويرها ؟
jjafferr replied to أحمد العيسى's topic in قسم الأكسيس Access
معك حق ، فالاكسس ما دون 2010 كان يعمل على النواة 32 بت فقط ، واالاكسس 2010 فما فوق يملك نسخة 32 بت واخرى 64 بت ، مما نضطر لعمل الامر ptrSafe حتى يعمل البرنامج على النواتين. فاذا كان التنصيب على حاسبتك النسخة 2010 فما فوق ، فيمكنك استعمال برنامج الرابط كما هو ، واذا كان التنصيب على حاسبتك النسخة اقل من 2010 ، فيجب عليك حذف جميع الاسطر التي بها الامر PtrSafe. بالاضافة الى عمل المرفق في الرابط اعلاه في تحسين الاداء ، اليك بعض الروابط للاسباب الاخرى: . . . . . -
سؤال : لماذا تكون بعض التطبيقات بطيئة بعد تطويرها ؟
jjafferr replied to أحمد العيسى's topic in قسم الأكسيس Access
وعليكم السلام اخوي احمد رجاء قرأة هذا الرابط ، واستخدم الاداة اللي فيه ، فانا لا استغني عنه وبإستمرار خلال عمل اي برنامج ، وقبل ان اعطيه الزبون -
المعذرة ، اعتقد صار فيه اشباه في الموضوع وفي طلبي ، وما كان مفروض اخليه في موضوعك !! انا قلت تنفيذ الوقت عن طريق Time Interval لازم يكون مستمر ، لأن الحدث يقوم بعدة امور ، ومو ممكن اوقفه علشان تظبيط الكود في مكان آخر من البرنامج ، وخلال عمل ذلك النموذج ، اريد ان اعدل الكود في نموذج آخر ، بحيث اشتغل فيه كالمعتاد ولا يسبب لي مشكلة في كتابة الكود.
-
المعذرة ، اعتقد صار فيه اشباه في الموضوع وفي طلبي ، وما كان مفروض اخليه في موضوعك !! انا قلت تنفيذ الوقت عن طريق Time Interval لازم يكون مستمر ، لأن الحدث يقوم بعدة امور ، ومو ممكن اوقفه علشان تظبيط الكود في مكان آخر من البرنامج ، وخلال عمل ذلك النموذج ، اريد ان اعدل الكود في نموذج آخر ، بحيث اشتغل فيه كالمعتاد ولا يسبب لي مشكلة في كتابة الكود.
-
السلام عليكم انا لا استعمل الساعة في اي من برامجي ، اضطر للتعامل مع Timer Interval في بعض النماذج لفحص مجلدات معينة (هناك مجلد مشاركة بين المستخدمين ، والبرنامج يراقب هذا المجلد ، فلما يجد فيه ملف معين ، يقوم بعمل معين) ، هذا النوع من المجلدات يسمى Hot Folder. اثناء عمل هذا البرنامج (فكر به كأنه ساعة ، تغير المعاينة كل ثانية) ، لما ادخل الكود ، لا استطيع الكتابة بسلاسة ، بسبب Time Interval نموذج آخر. كنت اتمنى عملكم اعلاه يحل المشكلة ، ولكن اتضح ان الساعة تتوقف عن العمل عند دخولي الى نافذة الكود ، مما يجعلني لا استفيد من الكود.