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

نام تاپیک: انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

  1. #1
    کاربر دائمی آواتار sara_aryanfar
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    جایی در ایران
    پست
    1,507

    انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

    با سلام فرض کنید ما تعدادی عکس داریم که آدرس اینترنتی اونا موجود هست حالا می خواهیم این عکسها رو از این لینک هاشون به روی یک هاست دیگر انتقال بدیم هاستی با کنترل پنل دایرکت ادمین چگونه می تونیم انجام بدیم ممنون

  2. #2
    کاربر دائمی آواتار sara_aryanfar
    تاریخ عضویت
    فروردین 1390
    محل زندگی
    جایی در ایران
    پست
    1,507

    نقل قول: انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

    یعنی امکان این وجود نداره که ما یک عکس رو مثلا از آدرس زیر
    https://barnamenevis.org/image.php?u=...ine=1316803332
    به روی سرور سایت منتقل کنیم؟ یعنی فایل رو دیگه با دیالوگ شو آدرس دهی نکنیم

  3. #3
    کاربر دائمی آواتار ahmadreza517
    تاریخ عضویت
    مرداد 1390
    محل زندگی
    اینترنت
    پست
    393

    نقل قول: انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

    به نام تنها برنامه نویس هستی
    سلام ,

    برای این کار شما باید ابتدا عکس را دریافت کره و بعد بر روی سرور انتقال بدید.

    برای دریافت می تونید از کد زیر استفاده کنید.


    req =(HttpWebRequest) WebRequest.Create(txtFileAddress.Text);
    req.Credentials = CredentialCache.DefaultCredentials;

    res =(HttpWebResponse)req.GetResponse();

    try
    {
    Int64 len;
    stream = res.GetResponseStream();

    byte[] buffer = new byte[2048];

    len = res.ContentLength;

    int byteRead = 0;

    strLocal = new FileStream(txtSave.Text.ToString(), FileMode.Append, FileAccess.Write, FileShare.None);

    while ((byteRead = stream.Read(buffer, 0, buffer.Length)) > 0)
    {
    strLocal.Write(buffer, 0, byteRead);
    this.Invoke(new UpdateProgessCallback(this.UpdateProgress), new object[] { strLocal.Length, len });
    }//end ring while
    }
    finally
    {
    stream.Close();
    strLocal.Close();
    t = null;
    }


    و برای ارسال از کد زیر


    FileInfo _FileInfo = new System.IO.FileInfo("c:\\pic.jpg");
    FtpWebRequest ftpWebRequest = (System.Net.FtpWebRequest)FtpWebRequest.Create(new Uri(FtpHostAddress + "pic.jpg"));

    ftpWebRequest.Credentials = new System.Net.NetworkCredential("username", "password");
    ftpWebRequest.KeepAlive = false;
    ftpWebRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile;
    ftpWebRequest.UseBinary = true;
    ftpWebRequest.ContentLength = _FileInfo.Length;

    int buffLength = 2048;
    byte[] buff = new byte[buffLength];
    FileStream _FileStream = _FileInfo.OpenRead();

    try
    {
    Stream _Stream = ftpWebRequest.GetRequestStream();
    int contentLen = _FileStream.Read(buff, 0, buffLength);
    while (contentLen != 0)
    {
    _Stream.Write(buff, 0, contentLen);
    contentLen = _FileStream.Read(buff, 0, buffLength);
    }

    _Stream.Close();
    _Stream.Dispose();
    _FileStream.Close();
    _FileStream.Dispose();

    label1.Invoke((MethodInvoker)delegate
    {
    label1.ForeColor = Color.Green;
    label1.Text = "uploaded successfully !";
    });

    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    //label1.ForeColor = Color.Green;
    //label1.Text = "Error,Please Try Again !";
    }


    با کمی تغییرات برای کار خود می تونید اش استفاده کنید.

    عکس رو از اینترنت می گیره (با پروتکل http ) و با در هاست ذخیره می کنه(با پروتکل ftp)

    در کد بالا قسمت دریافت بجای ذخیره شدن در کامپیوترhard disk می تونید از MemoryStream استفاده کنی.

    این جور که من فهمیدم این کدارو باید در پشت سر هم اجرا کنی و نکته اخر هم اینکه می تونی برای جلوگیری از هنگ کردن برنامه از thread یا کنترل backgroundworker استفاده کنی.

    یاحق !

  4. #4
    کاربر دائمی آواتار aradrobo
    تاریخ عضویت
    تیر 1391
    محل زندگی
    ایران سرای من است
    پست
    569

    نقل قول: انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

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

    برای این کار شما باید ابتدا عکس را دریافت کره و بعد بر روی سرور انتقال بدید.

    برای دریافت می تونید از کد زیر استفاده کنید.


    req =(HttpWebRequest) WebRequest.Create(txtFileAddress.Text);
    req.Credentials = CredentialCache.DefaultCredentials;

    res =(HttpWebResponse)req.GetResponse();

    try
    {
    Int64 len;
    stream = res.GetResponseStream();

    byte[] buffer = new byte[2048];

    len = res.ContentLength;

    int byteRead = 0;

    strLocal = new FileStream(txtSave.Text.ToString(), FileMode.Append, FileAccess.Write, FileShare.None);

    while ((byteRead = stream.Read(buffer, 0, buffer.Length)) > 0)
    {
    strLocal.Write(buffer, 0, byteRead);
    this.Invoke(new UpdateProgessCallback(this.UpdateProgress), new object[] { strLocal.Length, len });
    }//end ring while
    }
    finally
    {
    stream.Close();
    strLocal.Close();
    t = null;
    }


    و برای ارسال از کد زیر


    FileInfo _FileInfo = new System.IO.FileInfo("c:\\pic.jpg");
    FtpWebRequest ftpWebRequest = (System.Net.FtpWebRequest)FtpWebRequest.Create(new Uri(FtpHostAddress + "pic.jpg"));

    ftpWebRequest.Credentials = new System.Net.NetworkCredential("username", "password");
    ftpWebRequest.KeepAlive = false;
    ftpWebRequest.Method = System.Net.WebRequestMethods.Ftp.UploadFile;
    ftpWebRequest.UseBinary = true;
    ftpWebRequest.ContentLength = _FileInfo.Length;

    int buffLength = 2048;
    byte[] buff = new byte[buffLength];
    FileStream _FileStream = _FileInfo.OpenRead();

    try
    {
    Stream _Stream = ftpWebRequest.GetRequestStream();
    int contentLen = _FileStream.Read(buff, 0, buffLength);
    while (contentLen != 0)
    {
    _Stream.Write(buff, 0, contentLen);
    contentLen = _FileStream.Read(buff, 0, buffLength);
    }

    _Stream.Close();
    _Stream.Dispose();
    _FileStream.Close();
    _FileStream.Dispose();

    label1.Invoke((MethodInvoker)delegate
    {
    label1.ForeColor = Color.Green;
    label1.Text = "uploaded successfully !";
    });

    }
    catch (Exception ex)
    {
    MessageBox.Show(ex.Message);
    //label1.ForeColor = Color.Green;
    //label1.Text = "Error,Please Try Again !";
    }


    با کمی تغییرات برای کار خود می تونید اش استفاده کنید.

    عکس رو از اینترنت می گیره (با پروتکل http ) و با در هاست ذخیره می کنه(با پروتکل ftp)

    در کد بالا قسمت دریافت بجای ذخیره شدن در کامپیوترhard disk می تونید از MemoryStream استفاده کنی.

    این جور که من فهمیدم این کدارو باید در پشت سر هم اجرا کنی و نکته اخر هم اینکه می تونی برای جلوگیری از هنگ کردن برنامه از thread یا کنترل backgroundworker استفاده کنی.

    یاحق !
    لطفاً سورس کامل را برایم ایمیل کنید . چون برنامه خطا می دهد .

  5. #5
    کاربر دائمی آواتار aradrobo
    تاریخ عضویت
    تیر 1391
    محل زندگی
    ایران سرای من است
    پست
    569

    نقل قول: انتقال عکس از یک آدرس اینترنتی به روی هاست دیگر

    در قسمت دریافت خطا زیاد می دهد . مثل : req ، strLocal ، stream ، res

    اصلاً این عبارات را نمی شناسد . مشکل از کجاست ؟ لطفاً پاسخ را خصوصی ارسال کنید .

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

  1. انتقال عکس از روی دیتا بیس access به Sql server 2000 ؟
    نوشته شده توسط ho3einn در بخش Access
    پاسخ: 0
    آخرین پست: چهارشنبه 17 مهر 1387, 10:30 صبح
  2. انتقال بانک به روی هاست به طور کامل
    نوشته شده توسط hamed_bostan در بخش SQL Server
    پاسخ: 2
    آخرین پست: شنبه 07 خرداد 1384, 21:35 عصر
  3. گرفتن آدرس اینترنتی در IE و firefox
    نوشته شده توسط در بخش برنامه نویسی در Delphi
    پاسخ: 6
    آخرین پست: پنج شنبه 08 اردیبهشت 1384, 09:33 صبح
  4. مشکل در انتقال یک جدول از بانک Access به روی فلاپی در دلفی
    نوشته شده توسط Mbr در بخش برنامه نویسی در Delphi
    پاسخ: 5
    آخرین پست: دوشنبه 26 مرداد 1383, 11:50 صبح
  5. انتقال DataBase بر روی کامپیوتر دیگر
    نوشته شده توسط zehs_sha در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 6
    آخرین پست: پنج شنبه 06 شهریور 1382, 11:44 صبح

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

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