نمایش نتایج 1 تا 10 از 10

نام تاپیک: نمایش image درون db در picturebox

  1. #1

    نمایش image درون db در picturebox

    سلام
    من در این مورد search کردم و به نتایج خوبی هم رسیدم کدی که براتون می زارم تو خیلی جاها مثل همین رو گذاشتن ولی نمی دونم چرا برا من error می ده .اگه ممکنه راهنماییم کنین

    MemoryStream stream = newMemoryStream();
    conn =
    newSqlConnection(constr);
    string ct = "SELECT photo FROM student where (" +
    "نام=@نام and نام_خانوادگی=@نام_خانوادگی" +
    ")";
    SqlCommand command = new
    SqlCommand(ct, conn);
    command.Parameters.Add(
    "@نام", SqlDbType.NVarChar, 50).Value = comboBox1.SelectedValue.ToString();
    command.Parameters.Add(
    "@نام_خانوادگی", SqlDbType.NVarChar, 50).Value = comboBox2.SelectedValue.ToString();
    try
    {
    conn.Open();

    byte[] image = (byte[])command.ExecuteScalar();
    stream.Write(image, 0, image.Length);
    Bitmap bitmap = newBitmap(stream);
    //Response.ContentType = "image/gif";
    //bitmap.Save(Response.OutputStream, ImageFormat.Gif);
    pictureBox1.Image = bitmap;


    }
    finally
    {
    conn.Close();
    stream.Close();
    }

    تو خط bitmap =new bitmap(stream )
    error می ده که Parameter is not valid.
    باید چه کار کنم؟

  2. #2
    این رو ببین کارتو راه میندازه.
    فایل های ضمیمه فایل های ضمیمه

  3. #3
    کدی که تو برنامتون بود به صورت زیر نوشتم

    try
    {
    conn.Open();
    conn =
    newSqlConnection(constr);
    string ct = "SELECT photo FROM student where (" +
    "نام=@نام and نام_خانوادگی=@نام_خانوادگی" +
    ")";
    SqlCommand command = new
    SqlCommand(ct, conn);
    command.Parameters.Add(
    "@نام", SqlDbType.NVarChar, 50).Value = comboBox1.SelectedValue.ToString();
    command.Parameters.Add(
    "@نام_خانوادگی", SqlDbType.NVarChar, 50).Value = comboBox2.SelectedValue.ToString();
    empadap =
    newSqlDataAdapter();
    empadap.SelectCommand = command;
    dset =
    newDataSet("dset");
    empadap.Fill(dset);
    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    }
    DataTable dataTable = dset.Tables[0];
    //if there is an image in pctbox then delete it
    if (pictureBox1.Image != null)
    {
    pictureBox1.Image.Dispose();
    }
    //using filestream object read the column as bytes and store it as an image
    FileStream FS = newFileStream("image.jpg", FileMode.Create);
    foreach (DataRow dataRow in dataTable.Rows)
    {
    //if(dataRow[1].ToString() == comboBox1.SelectedItem.ToString())
    {
    byte[] blob = (byte[])dataRow[0];
    FS.Write(blob, 0, blob.Length);
    FS.Close();
    FS =
    null;
    pictureBox1.Image =
    Image.FromFile("image.jpg");
    pictureBox1.SizeMode =
    PictureBoxSizeMode.StretchImage;
    pictureBox1.Refresh();
    }
    }

    برا این هم تو خط
    FileStream
    FS = newFileStream("image.jpg", FileMode.Create);
    error می ده که out of memory
    همین image.jpg" رو باید بنویسم یا به جاش چیز دیگه ای بزارم؟

  4. #4
    نه فرقی نمی کن که چی باشه.این کد می خواد اون byte هایی که از database آورده رو به یک فایل تبدیل کنه و فایل رو بسازه. مهم نیست اون اسم چی باشه. ببین type فیلد درون database که عکس درونش هست image هست؟ و اینکه باید یک فایل با اسمimage.jpg در کنار فایل اجرایی برنامت ایجاد بشه. اینون تست کن

  5. #5
    هم کنار فایل اجرایی برنامم یک فایل با اسمimage.jpg به وجود می یاد. هم type فیلد درون database که عکس درونش هست image هست.
    حالا باید چی کار کنم؟
    لطفآ کمکم کنین.
    مرسی.

  6. #6
    بجای ذخیره کردن تصویر بر هارد ، مستقیم از MS تصویر رو به کنترل بدید . اینجوری :

    byte[] blob = (byte[])dataRow[0];
    MemoryStream ms=new MemoryStream(blob ,0,blob .Lenght);
    Image im=Image.FromStream(ms);
    pictureBox1.Image =im;

  7. #7
    برا کد شما هم تو سطر

    Image im = Image.FromStream(ms);

    می گه parameter is not valid
    همیشه یکی از این دو error بالا رو می ده به نظر هم کدام غیر منطقی نمی یاد
    من از دیروز کارم شده ایجاد پروژه جدید و کپی پیست کردن کدهام چون بعد یه مدت که برنامم کار کرد رو بعضی فرم ها یا کنترل ها موقع اجرا error می ده که فایل source برنامت نیست از کجا وارد کنم؟
    نمی دونم برا این مشکل چی کار باید بکنم
    لطفآ کمکم کنین.
    error ای که برا show کردن image هم می ده از این مشکل ناشی می شه؟

  8. #8
    پس مشکل جای دیگست. اون proje که من فرستادم هم دقیقا همین error رو میده؟البته اصلا تغیرش نده. ببین همین error رو میده؟

    نقل قول نوشته شده توسط shirin_h مشاهده تاپیک
    برا کد شما هم تو سطر

    Image im = Image.FromStream(ms);

    می گه parameter is not valid
    همیشه یکی از این دو error بالا رو می ده به نظر هم کدام غیر منطقی نمی یاد
    من از دیروز کارم شده ایجاد پروژه جدید و کپی پیست کردن کدهام چون بعد یه مدت که برنامم کار کرد رو بعضی فرم ها یا کنترل ها موقع اجرا error می ده که فایل source برنامت نیست از کجا وارد کنم؟
    نمی دونم برا این مشکل چی کار باید بکنم
    لطفآ کمکم کنین.
    error ای که برا show کردن image هم می ده از این مشکل ناشی می شه؟

  9. #9
    اگه از خط Image im = Image.FromStream خطا میگیره ممکنه متغیر blob شما خالی باشه و از بانک چیزی استخراج نشده باشه. لطفا برنامه رو Trace کنید ببینید متغیر مقدار دهی میشه یا نه؟

  10. #10
    ممنونم که دانسته هاتونو دریغ نمی کنین
    واقعآ ممنونم
    با وجود این سایت و کسایی مثل شما میشه به ایرانی بودنمون افتخار کنیم و بگیم انقدر دنیامون کوچیک نیست که با کمک کردن واطلاعات دادن به دیگران از بین بره بلکه دنیامون بزرگتر هم میشه به وسعت همه آدمای خوب و غیر تنگ نظر.
    امیدوارم به زودی که پروژمو تحویل دادم تا جایی که می تونم منم به دوستام کمک کنم
    هر چند من سوادم اندازه شما نیست
    ok
    بگذریم
    من جایی خوندم که برا image فرق نمی کنه که نوع داده تو db مون image باشه یا varbinary
    ولی کدای بالا همه درست بودند ولی برا نوع داده varbinary جواب نمی دادند.نوعش رو image کردم و از اول insert کردم و بعد خوندم error ای نداد و تو picturebox ام نشون داد.
    بازم ممنون که راهنماییم کردین.

تاپیک های مشابه

  1. PictureBox & Image CONTROL
    نوشته شده توسط Mbt925 در بخش برنامه نویسی در 6 VB
    پاسخ: 7
    آخرین پست: دوشنبه 12 شهریور 1386, 09:56 صبح
  2. پاسخ: 1
    آخرین پست: چهارشنبه 15 شهریور 1385, 09:15 صبح
  3. چطور میشه از یک picturebox با قابلیت scroll بدونه خصوصیته image پرینت گرفت
    نوشته شده توسط orkid1000 در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: چهارشنبه 21 تیر 1385, 07:48 صبح
  4. Best Fit Image In PictureBox
    نوشته شده توسط Peyman_Ranjbar در بخش C#‎‎
    پاسخ: 3
    آخرین پست: شنبه 15 اسفند 1383, 01:23 صبح
  5. Picturebox.image
    نوشته شده توسط mehdi3683 در بخش VB.NET
    پاسخ: 3
    آخرین پست: سه شنبه 30 تیر 1383, 21:42 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •