(23-10-24, 08:31 PM)F.H.M كتب : أشكرك عزيز Zuhare
ولكن مازالت المشكلة موجوده عند الضغط على زر الإلغاء ( Cancel ) يظهر الخطأ
المشروع بالمرفقات
جربت هذه المشروع المرفق في مشاركتك هذه على سكانر المكتب واشتغل بدون مشاكل.
حتى أنه يباشر بعمل المسح الضوئي بدون إظهار نافذة إختيار طريقة المسح .. ولا حتى يظهر أي سكانر سأختار(يختار الافتراضي)
واذا أغلقت السكان لا يعطي خطأ، بل يبقى المشروع في حالة العمل وجاهز لعمل مسح ضوئي مرة أخرى ..
المشكلة كلها تتلخص في السطر البرمجي :
PHP كود :
Dim device As WIA.Device = CD.ShowSelectDevice(WIA.WiaDeviceType.ScannerDeviceType, ShowSelectScanner, False)
حيث أن المتغير من نوع جهاز ، وليس نتيجة مربع حوار
فلو كان من نوع نتيجة مربع حوار لانتهت المشكلة بتحديد نوع الاجابة وعليه يتم التصرف..
ولهذا لايوجد حل لها الطريقة المعتادة .. (لكن يوجد حل آخر لها اذا استخدمت الكود المصدري للمكتبة(Twain) وليس المكتبة المستخدمة (DLL) وتحتاج شرح كثير - ولا يوجد وقت لذلك) (ذكرت لك هذا إذا أحببت أن تبحث بنفسك)..
لذا فإن أخينا (Zuhare) عدل على المشروع وجعله يسحب من السكانر مباشرة بدون إظهار مربع إختيار طريقة السكان وبدون اظهار نافذة أجهزة السكانر المتاحة : بالسطر (وهكذا ظهر عندي عندما جربت المشروع) :
PHP كود :
Dim b() As Byte = ScanMe(300, 11.6, 8.3, False, False)
لما وضع البارمتر الاخير (False) أي لا تحدد نوع السكان واختر الافتراضي ..
قال صلى الله عليه وسلم:
«كلمتان خفيفتان على اللسان
ثقيلتان في الميزان،حبيبتان إلى الرحمن:
سبحان الله وبحمده، سبحان الله العظيم».
