دوره های آموزشی برنامه نویسی تخصصی

آموزشگاه تحلیل داده با بیش از 10 سال سابقه درخشان در آموزش زبانهای تخصصی برنامه نویسی کامپیوتر

دوره های آموزشی برنامه نویسی تخصصی

آموزشگاه تحلیل داده با بیش از 10 سال سابقه درخشان در آموزش زبانهای تخصصی برنامه نویسی کامپیوتر

دانلود پروژه های مهندسی نرم افزار، پروژه های دانشجویی و پروژه های Open Source به سایت زیر مراجعه کنید

دانلود پروژه های دانشجویی



پروژه کار با شبکه


در این برنامه کار با شبکه به صورت کامل انجام گرفته است. ابتدا باید فضانام های مورد نیاز را به برنامه اضافه کنیم:

using System.Net.NetworkInformation;
 
using System.Net;
 
using System.Net.Sockets;
 
در تب اول با فشردن کلید نگاه کردن وارد قطعه کد زیر می شویم:
 
try
 
{
 
IPHostEntry hostEntry = Dns.GetHostEntry(lookupHostTextBox.Text);
 
lookupListView.Items.Clear();
 
foreach (IPAddress ipAddress in hostEntry.AddressList)
 
lookupListView.Items.Add(ipAddress.ToString());
 
}
 
catch (ArgumentNullException)
 
{
 
MessageBox.Show("Please enter the host name or IP address to ping.");
 
}
 
catch (ArgumentOutOfRangeException)
 
{
 
MessageBox.Show("The host name should be less than 127 characters");
 
}
 
catch (SocketException)
 
{
 
MessageBox.Show("Could not resolve host name.");
 
}
 
hostTextBox.Focus();

در این کد ابتدا یک شیء از کلاس IPHostEntry ساخته می شود. این کلاس به عنوان نگه دارنده اطلاعات مربوط به هاست استفاده می شود. بدین صورت که کاربر نام هاست مورد نظر را در جعبه متن وارد می کند و اطلاعات آن توسط متد GetHostEntry گرفته می شود. حال متغیر hostEntry دارای خاصیت های کاربردی است. یکی از این خاصیت ها HostName است که نام هاست را باز می گرداند. خاصیت دیگر AddressList است که لیستی از IP های مربوط به هاست را برمی گرداند. ما از این خاصیت استفاده می کنیم و تمام IP هارا در لیست وارد می کنیم.

در تب دوم آدرس یک هاست گفته می شود و ارتباط با آن بررسی می شود.

int c = 3;
 
IPAddress ipAddress = Dns.GetHostEntry(hostTextBox.Text).AddressList[0];
 
resultsListView.Items.Clear();
 
for (int i = 0; i < c; i++)
 
{
 
System.Net.NetworkInformation.Ping ping = 
 
new System.Net.NetworkInformation.Ping();
 
System.Net.NetworkInformation.PingReply pingReply = 
 
ping.Send(ipAddress);
 
ListViewItem result = new ListViewItem(pingReply.Address.ToString());
 
result.SubItems.Add(pingReply.Buffer.Count().ToString());
 
result.SubItems.Add(pingReply.RoundtripTime.ToString());
 
result.SubItems.Add(pingReply.Options.Ttl.ToString());
 
result.SubItems.Add(pingReply.Status.ToString());
 
resultsListView.Items.Add(result);
 
System.Threading.Thread.Sleep(100);
 
}

در این قطعه کد ابتدا با استفاده از دستوراتی که قبلا توضیح داده شد، اولین IP درگیر با هاست گرفته می شود و در متغیر ipAddress قرار داده می شود.حال برای تست برقراری اتصال ابتدا یک شیء به نام ping از کلاس System.Net.NetworkInformation. ساخته می شود. این شیء برای برقراری اتصال با متد Send یک آدرس IP می گیرد و پارامترهای این ارتباط را به صورت شیءای از کلاس pingReply برمی گرداند. ما HP گرفته شده را به عنوان پارامتر به تابع Send پاس می دهیم. کلاس PingReply دارای خاصیت هایی است:

: Buffer.Countتعداد بایت های رد و بدل شده را برمی گرداند.

: RoundtripTime:زمان رفت و برگشت اطلاعات را نشان می دهد.

: pingReply.Options.Ttl:این گزینه زمان (Time To Live) را نشان می دهد. بر مبنای IP مقدار TTL یک فیلد 8بیتی است و بیشترین مقدار آن 255 است.

pingReply.Status: موقعیت ارتباط را بیان می کند که در صورت موفقیت برابر با success می باشد.

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

System.Net.WebClient Client = new System.Net.WebClient();

Client.DownloadFile(fileUrlTextBox.Text, saveAsTextBox.Text);

ابتدا یک شیء از کلاس WebClient تولید می کنیم. یکی از خواص این کلاس متد Download فایل است که Url فایل را برروی شبکه می گیرد و در آدرس پارامتر دوم ذخیره می کند.


دانلود پروژه

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد