الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كيف يمكن جلب صورة من السكنر

مغلق
بدأه أبورنه في 23 يونيو 2007 · 4 رد · 1,160 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

أخواني بحثت كثيراً حول هذا الموضوع ولم اجد له حل فأيفيدوني جزاكم الله خير ...

والمشكلة العضمى اني مرتبط بمشروع مطلوب جلب صورة من سكنر فيه

والويندوز لدي ويندوز xp

#2

سؤال وجيه

لكنه صعب نوعاً ما لكن , ليس مستحيلاً

انا عن نفسي للاسف لا ادري

اقتباس
If A is success in life, then A equals x plus y plus z. Work is x; y is play; and z is keeping your mouth shut

Albert Einstein

مدخل إلى برمجة وتصميم الألعاب : كيف أبدأ ؟

#3

السلام عليكم ورحمة الله وبركاته

هناك دالة capCreateCaptureWindow استعملها مع الوب كام وهي تعمل مع السكانر أيضا تقوم بالتقاط الصورة من الdevice وتخزينها في الclipboard

اذا كان عندك الملف avicap32.dll يمكنني مساعدتك بالكود

 
Const WM_CAP_DRIVER_CONNECT As Long = 1034
 Const WM_CAP_GRAB_FRAME As Long = 1084
 Const WM_CAP_EDIT_COPY As Long = 1054
 Const WM_CAP_DRIVER_DISCONNECT = 1035
 Const WM_CAP_SEQUENCE = 1086
 Const WM_CAP_GET_SEQUENCE_SETUP = 1089
 Const WM_CAP_SET_SEQUENCE_SETUP = 1088

 Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As Long, ByVal x As Long, ByVal y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hwndParent As Long, ByVal nID As Long) As Long
 Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
 Dim mCapHwnd As Long

Public Sub ConnectDevice(Ohwnd As Long)
mCapHwnd = capCreateCaptureWindow("My Own Capture Window", 0, 0, 0, 320, 240, Ohwnd, 0)
SendMessage mCapHwnd, WM_CAP_DRIVER_CONNECT, 0, 0
End Sub
Public Sub StartCapt(picBox As Image)
1 SendMessage mCapHwnd, WM_CAP_GRAB_FRAME, 0, 0
SendMessage mCapHwnd, WM_CAP_EDIT_COPY, 0, 0
On Error GoTo 1
picBox.Picture = Clipboard.GetData(vbCFBitmap)
End Sub

أولا قم باستدعاء ConnectDevice وبعدها الدالة StartCapt لاخذ الصورة

اضافة الى ذلك يمكنك البحث في المنتدى

/index.php?showtopic=71719

#4

جزاك الله خير أخوي على الرد السريع ...

لقد وجدت الملف الذي تقول عنه avicap32.dll

ولكن ياليت تشرح طريقة وضع الكود ولو بإختصار

وجزاك الله خير مره أخرى

#5

أهلا أخي الكريم

الكود يحتوي على تعريفات يمكنك لضقها مباشرة في قسم التصريحات الخاص بالفورم الذي تعمل عليه

وهناك دالتين كما قلت

الأولى ConnectDevice والبرامتر الخاص بها يمثل مقبض النافذة التي يشتغل عليها برنامجنا

وتقوم بجلب مقبض النافذة الخاص بالاتصال بالسكانر أو الوب كام اذا كانت موجودة طبعا

ومن ثم ارسال رسالة بواسطة SendMessage لتشغيل الجهاز بواسطة المقبض الذي التقطناه

والدالة الثانية تقوم بحفظ الصورة في الحافظة واستخراجها وعرضها على imagebox

للتطبيق وليكن لدين زر أمر وimage1

نكتب في زر الأمر

ConnectDevice Me.Hwnd
StartCapt Image1

بالتوفيق ان شاء الله للجميع

هذا الموضوع مغلق.

مواضيع مشابهة