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

نام تاپیک: کپی کردن فایل های حجیم و ...

  1. #1
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    Arrow کپی کردن فایل های حجیم و ...

    دوستان سلام:


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

    و سوال دومم اینکه چه جوری می توانم یک نوار پیشرفت وضعیت از یک عمل کپی بسازم.

  2. #2
    کاربر دائمی آواتار DataMaster
    تاریخ عضویت
    تیر 1382
    محل زندگی
    مشهد الرضا
    پست
    634

    نقل قول: کپی کردن فایل های حجیم و ...

    1-پروسه رو توی یک Threadاجرا کنید تا Thread اصلی برنامه منتظر کپی شدن نشه
    2- شما حجم کل اطلاعاتی رو که میخواهید کپی کنید رو اگر داشته باشید با یه حساب کتاب سرانگشتی و مقدار اطلاعاتی که کپی کردین میتونید اون رو به درصد حساب کنید( ریاضی دوران ابتدایی)

  3. #3
    کاربر دائمی
    تاریخ عضویت
    شهریور 1388
    محل زندگی
    Tehran
    پست
    141

    نقل قول: کپی کردن فایل های حجیم و ...

    سلام.
    1- از ترید استفاده کنین تا برنامتون هنگ نکنه
    2- فایل رو به صورت باینری باز کن،حجم کل فایل رو بدست بیار و یک بایت یک بایت از فایل مورد نظر رو بخون و بریز تو یه فایل دیگه در مقصد تا تموم بشه. مقدار ماکزیمم Progress Bar رو برابر طول فایل قرار بده و به ازای هر بایتی که میخوانی و کپی میکنی یکی به اون اضافه کن.

  4. #4
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: کپی کردن فایل های حجیم و ...

    دوست عزیز در خواندن بایت ها مشکلی ندارم ولی چگونه می توانم یکی یکی بایت ها را درون فایل بریزم؟

  5. #5
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: کپی کردن فایل های حجیم و ...

    دوست عزیز کد زیر را درون ترید می زارم ولی ارور می ده چرا؟


    publicvoid Mycall()
    {
    File.Copy(openFileDialog1.FileName,textBox2.Text);
    byte[] b = File.ReadAllBytes(openFileDialog1.FileName);
    progressBar1.Maximum = b.Length;
    progressBar1.Minimum = 0;
    FileStream s = newFileStream(textBox2.Text, FileMode.Append);
    for (int i = 0; i < b.Length; i++)
    {
    progressBar1.Value = progressBar1.Value + 1;
    s.WriteByte(b[i]);
    }
    }
    آخرین ویرایش به وسیله system32 : چهارشنبه 25 آذر 1388 در 21:48 عصر

  6. #6
    کاربر دائمی آواتار hakelberfin
    تاریخ عضویت
    اردیبهشت 1388
    محل زندگی
    تبریز
    پست
    137

    نقل قول: کپی کردن فایل های حجیم و ...

    یک Thread میتونه به عناصری مستقیما دسترسی داشته باشه که توسط خودش تولید شده باشه
    OpenDialog1 توسط Thread دیگه ای تولید شده
    سعی کن openFileDialog1 , progressBar1
    رو تو همین تابع ایجاد کنی

  7. #7
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: کپی کردن فایل های حجیم و ...

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

  8. #8
    کاربر دائمی آواتار system32
    تاریخ عضویت
    خرداد 1388
    محل زندگی
    اصفهان
    سن
    35
    پست
    381

    نقل قول: کپی کردن فایل های حجیم و ...

    دوستان راهی به ذهنشون نمی رسه؟

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

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