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

jjafferr

أوفيسنا
  • Posts

    9903
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    404

كل منشورات العضو jjafferr

  1. تفضل Dim stAppName As String stAppName = "C:\WINDOWS\system32\calc.exe" Call Shell(stAppName, 1) جعفر
  2. وعليكم السلام أخي واهلا وسهلا بك في المنتدى الجواب هو نعم ، وتلقائيا جعفر
  3. أخي حمادة بما انك في المنتدى وفي قسم الاكسس بالذات ، فهذا معناه انك مبرمج. ومن شروط المنتدى ان تبحث عن ما تريد ، قبل ان تضع السؤال ، وقبل ان اغلق موضوعك السايق ، اثبت اخي شفان ان هناك عدة روابط لعمل النسخ الاحتياطية. ومن شبه المستحيل ان تحصل على ماتريد 100% ، ولكن كونك كمبرمج ، تستطيع ان تستفيد من هذه الروابط وتتوصل الى الذي تريد. لهذا السبب تم اغلاق الموضوع السابق. جعفر
  4. السلام عليكم قواعد المشاركة فى الموقع و بصفة خاصة نؤكدعلى ما يلي 1- يمنع منعا باتا نشر أية مواد تخالف حقوق الملكية الفكرية و يرجى الابلاغ عن المشاركات المخالفة من خلال زر تقرير اسفل المشاركة 2-يجب استخدام خاصيةالبحث قبل طرح السؤال توفيرا للوقت و الجهد. 3-ضرورة كتابة عنوان واضح للموضوع يدل على محتواه ويعطي وصفاً مختصرا للسؤال. 4-ممنوع منعا باتاً كتابة عناوين سينمائية مثل عاجل ، نداء الي فلان ، الي الخبراء ، طلب مساعدة ، أريد حلا..... 5-يمكن استعجال الرد باستخدام تعبير -للرفع- و غير مسموح بالالحاح او اللوم فجميع الاعضاء يشاركون تطوعا طبقا لسعة وقتهم. ومخالفة ذلك تعرض الموضوع للحذف جعفر
  5. وعليكم السلام أخوي حربي انا انتظرت من الامس الى اليوم حتى اعطيك هذه الملاحظة طريقة عرضك للموضوع تحتم على علينا انزال المرفق ، ثم النظر فيه لمعرفة السؤال !! مقدرة الاعضاء في المنتدى للإجابة على الاسئلة تعتمد على: 1. وجود الوقت الكافي عند العضو للإجابة ، 2. اذا كان يعرف الاجابة مباشرة على السؤال حسب وقته ، 3. بعض الاعضاء يجاوب على الاسئلة من الموبايل ، فلا يستطيع تحميل المرفق ، لذلك ، فانت حسمت الموضوع انه لا رد إلا بإزال المرفق جعفر
  6. عفوا شوف ملاحظتي الاخيرة عن Requery ، للأسف تم دمجها مع المشاركة اللي قبلها جعفر هكذا Private Sub txtDate_AfterUpdate() Me.subRealisation.Form.Requery End Sub Private Sub txtMarkItem_AfterUpdate() Me.txtQuantityCurrent = Nz(DSum("NumberPeinture", "CheckTotalMarkItem"), 0) Me.subRealisation.Form.Requery End Sub Private Sub txtProject_AfterUpdate() Me.txtMarkItem = "" Me.txtQuantity = 0 Me.txtMarkItem.Requery Me.subRealisation.Form.Requery 'If IsNull(Me.txtProject) Then 'Me.subRealisation.Form.Filter = "" 'Me.subRealisation.Form.FilterOn = False 'Else 'Me.subRealisation.Form.Filter = "[Project]= '" & Me.txtProject & "'" 'Me.subRealisation.Form.FilterOn = True 'End If End Sub وللعلم ، تاريخ 19 ما عندك سجل ، فيجب تغييره الى 18 لتحصل على سجل
  7. في علاقة Master/Chid يجب ان تستعمل اسم الحقل من مصدره ، وليس الاسم الذي اعطيته في النموذج ، يعني ، اسماء حقول Child يجب ان تكون Project;Repères;LaDate جعفر ولا تنسى عمل Requery للنموذج الفرعي كلما عملت تغيير للحقول الثلاث في النموذج الرئيسي جعفر
  8. السلام عليكم بوعبدالله مافي داعي للكود ، ربط النموذج الرئيسي بالفرعي عن طريق Master/Child كفاية جعفر
  9. هذا السطر الوحيد الذي حصلت عليه في الاختيارات - IrfanView exit code is 0. If /convert or /print is used, there is 1 or 2 also possible, for load/save error. وهذا مثال استخدامه https://irfanview-forum.de/showthread.php?t=4736&p=22567&viewfull=1#post22567 ولكني لا اعتقد بأنه سيعطيك النتيجة التي تريدها!! جعفر
  10. انا والبرنامج Irfan View صحبة من زمان ، ومنصب على كمبيوتري ، وهذه احد مشاركاتي فيه خليني اشوف اذا ممكن يرجع نتيجة او لا نعم بالضبط ، 100% هذا اذا استعملتها ، ولكن الظاهر انكم هنا تستخدمون Irfan View ، فخليني اشوف اذا Irfan View يرجع النتيجة او لا جعفر
  11. هذا الكود جزء من وحدة نمطية ، وانا استخدمتها كمثال فقط ، للتوضيح فقط ، بينما انت يجب تستخدم برنامجك/الكود الذي تعمل عليه!! طيب ، ايش الكود/البرنامج الذي تستعمله ، واللي يتم تشغيله بواسطة Shell ؟ يمكن نشوف تفاصيله ، ونطلع بنتيجة جعفر
  12. لا ، Shell لا يعرف اي شيء عن البرنامج الذي يقوم بالعمل (فلنسمه الالة الحاسبة) ، مهمة Shell فقط بإعطاء الامر للكمبيوتر لفتح الآلة الحاسبة ، ولكن الآلة الحاسبة يجب ان يكون لها متغير يعطيك اذا النتيجة ايجابية او سلبية!! انتم في هذا الموضوع كلامكم عن الامر Shell ، ولكنه في حقيقة الامر هو مجرد مشغل لبرنامج آخر/كود ، وهذا البرنامج الآخر/الكود هو الذي يجب ان يعُطى المتغير ، هذا اذا كان يسمح بهذا جعفر
  13. لاحظ ترتيب اجابتي: 2. وبعد فتح ملف أخي ابوخليل ، فالرسائل التي تظهر بعد الزر جميعها صحيح ، حيث ان الالة الحاسبة كبرنامج ، لما تم فتحه فيكون الكود قد اتم عمله ، فبعدها يعطيك الرسالة ، ولكن عند طلبك المنطقة واللغة ، فالامر لم ينتهي بعد إلا بعد انتهائك من اتمام لاختيار ، وهذا عيناً طلبك 1. هذا موضوع آخر ، وهو هل الامر نجح او فشل ، فالامر Shell او ShellWait لا علاقة لهم بنجاح المسح الضوئي وفشله هنا تأتي طريقة اخرى ، وهي طريقة مناداة الوحدة النمطية (لا اعني Shell وانما الوحدة النمطية لتشغيل الاسكانر مثلا) ، وطلب نتيجة الامر ، هكذا هذه وحدة نمطية عادية ، تعمل المطلوب ، ولكن لا تخبرنا عن نتيجة العمل ، تم او لا Public Function TransferWithoutUI(ByVal sngResolution As Single, _ ByVal tColourType As TWAIN_MDL_COLOURTYPE) ونناديها هكذا: call TransferWithoutUI(.....) ---------------------------------- بينما هنا لاحظ بعد اغلاق القوس هذه وحدة نمطية عادية ، تعمل المطلوب ، وتخبرنا عن نتيجة العمل ، تم او لا Public Function TransferWithoutUI(ByVal sngResolution As Single, _ ByVal tColourType As TWAIN_MDL_COLOURTYPE) As Long ونناديها هكذا: Dim Result as Long Result = TransferWithoutUI(.....) if Result = .... وهنا نتيجة Result تعتمد على ما يحدث في عملية قيام الاسكانر بالاسكان ، سواء تم الاسكان بطريقة صحيحة او .... جعفر
  14. لازم تجرب هذا انا لا اضع موضوع إلا اذا فيه له اهمية زبائني كان عندهم طلب ، وهو الارشفة ، وجزء منهم لإوراق قليلة وجزء لشئون الموظفين ، بالإضافة الى صور الموظفين ، موضوع النقر لفتح نافذة الوندوز واختيار الصور ، و السكانر بالطريقة العادية ، هاي منتهين منها ، الطلب تطور بسبب بطئ السكانرات العادية (حوالي 50 ثانية لتصوير الورقة الواحدة) ، طبعا لا اتكلم عن تصوير مجموعة من المستندات دفعة واحدة بالاسكانر السريع الغالي ، فالحمدلله ومن حوالي سنه توصلت الى التصوير عن طريق WebCam (حوالي 5 ثواني) و DSLR (حوالي 5 ثواني) ، وفي السجل مباشرة ، ولكن كاميرات DSLR غالية ، و WebCam يحتاج الى إضاءة صحيحة والصورة ليست بالوضوح المطلوب ، لذلك والحمدلله توصلت الى التصوير عن طريق كاميرات هواتف الاندرويد ، والتصوير فيه دقة عالية ، والفلاش ممتاز ، والتصوير يأخذ حوالي 9 ثواني ، وكل بيت فيه على الاقل هاتف واحد قديم لا يُستعمل هاي التقنية الجديدة اللي انصح المبرمجين اتباعها لزبائنهم ، سواء للصور الشخصية او تصوير المستندات صورة بصورة جعفر
  15. هنا ستلاحظ اني استعملت الامر ShellWait ، والرابط فيه الوحدة النمطية: جعفر
  16. السلام عليكم الامر Shell مثله مثل اي امر آخر ، يعني بعد الامر مباشرة تستطيع ان تكتب msgbox ، ولكن الامر Shell يعطي الامر ولا ينتظر اكمال الامر ، مثل في حالة التصوير الضوئي ، فإنه يعطي الامر ولا ينتظر ان يُتم الاسكان ، لذلك فعمل msgbox بعده لا يعني ان السكان انتهى ، وانما يعني ان Shell قد انتهى من إعطاء الامر ، اذا كنت تريد ان تعطي الاسكان امر طباعة ، وتريد ان لا تنتقل الى السطر التالي من الكود قبل الانتهاء من العمل بالكامل ، فيجب ان تستعمل الامر ShellWait : http://access.mvps.org/access/api/api0004.htm وطريقة استعمالها هي نفسها بالضبط مثل Shell ، وبعدها تستطيع ان تضع msgbox جعفر
  17. وعليكم السلام الرابط التالي فيه برنامج يقوم بهذه الحسبة: http://www.lebans.com/textwidth-height.htm جعفر
  18. وعليكم السلام شكرا جزيلا على هذا العمل الجميل والخفيف مع اني لا احب SendKeys لما لها من مشاكل ، ولكن هناك الكثير من الاحيان لا يوجد حيلة او طريقة اخرى شكرا أخي محمد لتحويل برنامج السيد جمال الى اكسس حياك الله اخوي ابوخليل الكود والمرفق الاخير الذي وضعته ، المفروض ان يشتغلون والسموحة اننا توقفنا جعفر
  19. السلام عليكم ومرفق البرنامج الشبه نهائي (لأنه لا يرسل رسائل عربية Unicode بعد) والكود فيه الكود الاسرع (الذي في الاعلى) ، وكود التجارب في الاسفل: Private Sub cmd_WhatsApp_Click() Dim cmmd As String Dim cmmd1 As String Dim cmmd2 As String Dim cmmd3 As String Dim cmmd4 As String Dim cmmd5 As String Dim cmmd6 As String Dim cmmd7 As String 'set BE_Path Call BE_or_FE 'Adb location App_Location = BE_Path & "Camera_App\Android_Mobile\Adb.exe" 'Send a message from MS Access through WhatsApp cmmd1 = App_Location & " shell input keyevent 82" & "; sleep 1; " cmmd2 = "am force-stop com.whatsapp" & "; sleep 1; " cmmd3 = "am start -n com.whatsapp/.Main" & "; sleep 1; " cmmd4 = "input text " & Me.To & "; sleep 1; " cmmd5 = "input tap 400 700" & "; sleep 2; " cmmd = cmmd1 & cmmd2 & cmmd3 & cmmd4 & cmmd5 'Debug.Print cmmd Call ShellWait(cmmd, vbHidden) cmmd = App_Location & " shell input text " & Chr(34) & Me.WhatsApp & Chr(34) & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell input tap 1000 1100" Call ShellWait(cmmd, vbNormal) Exit Sub 'turn on the mobile cmmd = App_Location & " shell input keyevent 82" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'turn close WhatsApp cmmd = App_Location & " shell am force-stop com.whatsapp" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'start WhatsApp cmmd = App_Location & " shell am start -n com.whatsapp/.Main" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'search for a name or a Group or a phone number cmmd = App_Location & " shell input text " & Me.To & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'tap/touch the first name location (x,y) cmmd = App_Location & " shell input tap 400 700" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'insert the message cmmd = App_Location & " shell input text " & Chr(34) & Me.WhatsApp & Chr(34) & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'tap/click on the send button location (x,y) cmmd = App_Location & " shell input tap 1000 1100" Call ShellWait(cmmd, vbNormal) End Sub جعفر Send_WhatsApp_messages.mdb.zip
  20. وعليكم السلام أخي محمد ، وشكرا على التأكيد اما بالنسبة للرقم 1 فانا ذكرته في آخر كود ارفقته ، ومافي فرق بين ChrW(34) و Chr(34) والرقم 2 ، فقلت انك يجب ان تحصل عليه كما في الصورة الاخيرة ، والسبب ان الرقم غير ثابت ، فهو يعتمد على حجم الشاشة وحجم لوحة المفاتيح جعفر
  21. السلام عليكم تفضل هذا الكود شبه النهائي ، وشغال 100% مع اللغة الانجليزية 'turn on the mobile cmmd = App_Location & " shell input keyevent 82" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'turn close WhatsApp cmmd = App_Location & " shell am force-stop com.whatsapp" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'start WhatsApp cmmd = App_Location & " shell am start -n com.whatsapp/.Main" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'search for a name or a Group or a phone number cmmd = App_Location & " shell input text " & "Hason" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'tap/touch the first name location (x,y) cmmd = App_Location & " shell input tap 400 700" & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'insert the message cmmd = App_Location & " shell input text " & Chr(34) & "Testing" & Chr(34) & "; sleep 1" Call ShellWait(cmmd, vbNormal) 'tap/click on the send button location (x,y) cmmd = App_Location & " shell input tap 1000 1100" Call ShellWait(cmmd, vbNormal) ولكن للوصول الى الارقام في السطر قبل الاخير ، يجب اتباع التالي (بدل ان تكون ارقامك بالتجربة): . اختر الحقلين 1 و 2 بعلامة الصح ، واللي محتاجين لهم ليعطونا نتائج رقم 3 و 4 (وبعد الحصول على الارقام الصحيحة ، يجب الغاء الصح من الحقلين 1 و2): . لمعرفة مكان زر الارسال ، محور س و ص X Y : ثم بعد ان ندخل اي شيء في حقل الكتابة في الواتس اب ، اغغط وخليك ماسك زر المايكروفون (لانه بعد الكتابة سيتغير الى زر الارسال) ، لاحظ الارقام في الاعلى في المربعين الاحمرين ، وسترى من الصورة انها 1022 في 1062 ، والذي قربته انا في الكود الى 1000 في 1100 . جعفر
  22. لبيك أخي ابوخليل مع اني لم استعمل واتس اب طول عمري ، ولكن لأجل عين ألف عين تُكرم ، جربت على تلفون ولدي الكود غير مكتمل ، لكنه على الطريق الصحيح: 1. يجب اتباع هذه الخطوات لجعل الهاتف يتفاهم مع الكمبيوتر ، الى الصورة التي قلت تحتها: "الآن هاتفك مهيأ للتحكم فيه من خلال البرنامج" ، 2. انزل المرفق من الرابط ، 3. في النموذج frm_Names ، اضف زر للواتس اب ، وضع الكود (الكود المرفق ، ليس الذي في الرابط) على حدث النقر وفي الكود ، بدل: "اسم او رقم الشخص" ، او اسم المجموعة ، يجب ان تكتب معلمة حقيقية ، لأن البرنامج سيعمل بحث لها ، Dim cmmd As String 'how long does it take to take the picture istart = Timer 'set BE_Path Call BE_or_FE 'Adb location App_Location = BE_Path & "Camera_App\Android_Mobile\Adb.exe" Save_images_to = BE_Path & "images\" 'image capture mode cmmd = App_Location & " shell input keyevent 82" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell am force-stop com.whatsapp" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell am start -n com.whatsapp/.Main" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell input text " & "اسم او رقم الشخص" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell input tap 400 700" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell input text " & "I am testing'" & "; sleep 1" Call ShellWait(cmmd, vbNormal) cmmd = App_Location & " shell input tap 990 1650" & "; sleep 1" Call ShellWait(cmmd, vbNormal) المفروض الكود يشتغل عن أخوي ابوخليل على طول ، لأنه جرب برنامجي في الرابط واشتغل معاه وارجو منه يعطينا النتيجة حاليا الكود عندي لا يكتب الرسالة ، ولم اجرب الارسال بعد ومضطر اترك التجربة الآن ، الى بعد حوالي 3 ساعات جعفر
×
×
  • اضف...

Important Information