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

نام تاپیک: استفاده از backgroundworker برای نمایش سیستم های فعال در شبکه

  1. #1

    استفاده از backgroundworker برای نمایش سیستم های فعال در شبکه

    سلام دوستان
    میخوام کل سیستم های فعال در شبکه رو نشون بدم
    این کار مدتی زمان میبره و در طی این مدت که اصطلاحا پینگ گرفته میشه برنامه هنگ میکنه!
    جستجو کردم فهمیدم باید از backgroundworker استفاده کنم!
    ولی بلد نیستم
    ممنون میشم راهنمایی کنین

  2. #2

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

    سلام
    ی سرچ بزن تو سایت اموزش های زیادی در مورد کار کردن با این component هست (مطالب خیلی ساده هست و براحتی متوجهشون میشی)
    مختصرا توضیح میدم و توضیحات تکمیلی رو خودتون مطالعه کنید
    این component سه رویداد داره! DoWork و ProgressChanged و Completed
    خب شما کدهایی رو که قراره به صورت غیرهمگام اجرا کنید رو در رویداد DoWork قرار میدید ( که در مورد کار شما میشه همون ping گرفتن ها )
    در رویداد DoWork نتایج حاصله از کارتون رو با استفاده از متد ReportProgress به رویداد ProgressChanged میفرستید و در این رویداد هم با استفاده از پارامتر e مقادیر ارسالی رو از DoWork دریافت میکنید و نمایش میدید و یا هر چیز دیگه ... (e.ProgressPercentage , e.UserState)

    چندتا نکته هست که طی مطالعه Backgroundworker ها متوجه میشه


    موفق باشی

  3. #3
    کاربر دائمی آواتار دلتنگ اسمان
    تاریخ عضویت
    بهمن 1391
    محل زندگی
    دل یار
    سن
    35
    پست
    571

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

    این لینک رو ببین

  4. #4

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

    ممنون دوستان
    ولی هر کار میکنم نمیتونم کدش رو بنویسم!
    کد اصلی من اینه:

    System.Diagnostics.Process pr = new System.Diagnostics.Process();
    System.Diagnostics.ProcessStartInfo pstart = new System.Diagnostics.ProcessStartInfo("cmd.exe");
    pstart.CreateNoWindow = true;
    //pstart.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
    pstart.UseShellExecute = false;
    pstart.RedirectStandardOutput = true;
    pstart.RedirectStandardInput = true;
    pr.StartInfo = pstart;
    pr.Start();
    System.IO.StreamReader reader = pr.StandardOutput;
    System.IO.StreamWriter writer = pr.StandardInput;
    writer.WriteLine("net view");
    writer.Close();

    this.listBox1.Items.Clear();
    while (!reader.EndOfStream)
    {
    string line = reader.ReadLine();
    if (line.StartsWith("\\"))
    {
    line = line.Replace("\\", "");
    this.listBox1.Items.Add(line);
    }
    }
    pr.WaitForExit();
    pr.Close();

    }

  5. #5

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

    سلام
    مطالعه کردین در مورد Backgroundworker ؟
    تمام کدهایی که بررسی میکنن ایا سیستم با شبکه در تعامل هست رو در رویداد DoWork قرار میدین تا این کارها همزمان با اجرای برنامه انجام بشن (به صورت غیر همگام )
    و انتهای پروسه نتیجه رو با استفاده از متد ReportProgress گزارش میدین ( بالا توضیح دادم )
    لازمه کار اینکه که در مورد backgroundworker ها مطالعه کنید

    ی مثال پیوست کردم

    در صورتی که بخواین حین انجام کار در DoWork گزارشی رو ارسال کنید باید خاصیت WorkerReportsProgress رو true کنید
    فایل های ضمیمه فایل های ضمیمه

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

  1. آموزش: استفاده از کنترل webbrowser برای نمایش متن های فارسی
    نوشته شده توسط فاطی.جدا در بخش VB.NET
    پاسخ: 0
    آخرین پست: سه شنبه 07 خرداد 1392, 18:42 عصر
  2. نحوه استفاده از rss برای نمایش اخبار (تازه کار)
    نوشته شده توسط best_ariya در بخش ASP.NET Web Forms
    پاسخ: 3
    آخرین پست: سه شنبه 08 خرداد 1386, 09:22 صبح
  3. مشکل با DBctrlGrid برای نمایش عکس های متوالی
    نوشته شده توسط nasr در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 4
    آخرین پست: چهارشنبه 02 شهریور 1384, 12:31 عصر
  4. یک Activex برای نمایش فایل های Gif در برنامه
    نوشته شده توسط محسن شمس در بخش برنامه نویسی در 6 VB
    پاسخ: 5
    آخرین پست: پنج شنبه 27 مرداد 1384, 12:00 عصر

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

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