منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : بشأن عرض الصوره في PictureBox قاعدة sql
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
الصفحات : 1 2
السلام عليكم ورحمة الله وبركاته        

لدي مشروع على vb.net 2010 وقاعدة البيانات sql وأضفت له خاصية الماسح الضوئي وهذا كود الحفظ  بقاعدة البيانات

كود :
If sLab.TextBox3.Text = "" Then
           MsgBox("أدخل رقم الهويه")
       End If
       Dim ms1 As New MemoryStream()
       Dim arrimg() As Byte = ms1.GetBuffer
       ms1.Close()
       ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
       connSQLServer.Open()
       Dim sqlc As New SqlCommand
       sqlc.Connection = connSQLServer
       sqlc.CommandText = " Update ERFile_Tab set pt1=@pt1 where ns_pat=@ns_pat2 "
       sqlc.Parameters.Add(New SqlParameter("@pt1", SqlDbType.Image)).Value = ms1.ToArray()
       sqlc.Parameters.Add("ns_pat2", SqlDbType.Int).Value = sLab.Label6.Text
       sqlc.ExecuteNonQuery()
       connSQLServer.Close()
       MsgBox("تمت الاضافة بنجاح")
     


طبعا الكود يحفظ بقاعدة البيانات لكن ممكن احد يفيدني بكود عرض الصوره في PictureBox 
اجلب الصورة من قاعدة البيانات
حولها من Bytes إلى Image
ثم اعرضعا على Picturebox
هذا ما يقصده استاذ عبدالله الدوسري

PHP كود :
Dim PIC_() As Byte CType(dt.Rows(dt.Rows.Count 1).Item("PIC_T"), Byte())
 
           Dim MS As New MemoryStream(PIC_)
 
           pic.Image Image.FromStream(MS
(27-01-18, 01:25 AM)محمود صالح كتب : [ -> ]هذا ما يقصده استاذ عبدالله الدوسري

PHP كود :
Dim PIC_() As Byte CType(dt.Rows(dt.Rows.Count 1).Item("PIC_T"), Byte())
 
           Dim MS As New MemoryStream(PIC_)
 
           pic.Image Image.FromStream(MS

شكرا لك أخي محمود أنا حولتها لكن يعطيني هالخطأ المرفق
كود :
       Try
           PictureBox1.Image = Image.FromStream(New System.IO.MemoryStream(dt.Row(0)("pt1")))
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try
[attachment=16905]
(27-01-18, 04:06 AM)عبدالله الدوسري كتب : [ -> ]
كود :
       Try
           PictureBox1.Image = Image.FromStream(New System.IO.MemoryStream(dt.Row(0)("pt1")))
       Catch ex As Exception
           MsgBox(ex.Message)
       End Try

الله يسعدك أستاذ عبدالله لاهنت جربت الكود وطلع عندي هالخطأ .
تصحيح بسيط لكود الأخ [b]عبدالله الدوسري[/b]
PHP كود :
PictureBox1.Image Image.FromStream(New System.IO.MemoryStream(CType(dt.Rows(0)("pt1"), Byte()))) 
(27-01-18, 06:38 AM)طالب برمجة كتب : [ -> ]تصحيح بسيط لكود الأخ [b]عبدالله الدوسري[/b]
PHP كود :
PictureBox1.Image Image.FromStream(New System.IO.MemoryStream(CType(dt.Rows(0)("pt1"), Byte()))) 

جربت هذا الكود و شغال 100 % 

لكن طلعت المشكله بكود الحفظ اتوقع أنه مايحول الصوره من Image إلى Bytes 
كود :
Dim ms1 As New MemoryStream()
      Dim arrimg() As Byte = ms1.GetBuffer
      ms1.Close()
      ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
      connSQLServer.Open()
      Dim sqlc As New SqlCommand
      sqlc.Connection = connSQLServer
      sqlc.CommandText = " Update ERFile_Tab set pt1=@pt1 where ns_pat=@ns_pat2 "
      sqlc.Parameters.Add(New SqlParameter("@pt1", SqlDbType.Image)).Value = ms1.ToArray()
      sqlc.Parameters.Add("ns_pat2", SqlDbType.Int).Value = sLab.Label6.Text
      sqlc.ExecuteNonQuery()
      connSQLServer.Close()
      MsgBox("تمت الاضافة بنجاح")
نعم فالكود لم يذكر الصورة

هذا تعديل الجزء العلوي من الكود
PHP كود :
Dim ms1 As New MemoryStream()
PictureBox1.Image.Save(ms1PictureBox1.Image.RawFormat)
ms1.Close() 
ممكن طريقة التعامل مع الاسكنر
الصفحات : 1 2