السلام عليكم ,,
كيف اكتب كود لمعرفة اذا كان الجهاز متصل بالانترنت ام لا .. واخر اذا اكان الرابط المستخدم موجود(صحيح) ام غير صحيح ؟؟؟
فاذا كان الانترنت غير متصل او ان الرابط غير موجود او غير صحيح يظهر في web browser صورة او تيكست تعبر عن ذلك
السلام عليكم ,,
كيف اكتب كود لمعرفة اذا كان الجهاز متصل بالانترنت ام لا .. واخر اذا اكان الرابط المستخدم موجود(صحيح) ام غير صحيح ؟؟؟
فاذا كان الانترنت غير متصل او ان الرابط غير موجود او غير صحيح يظهر في web browser صورة او تيكست تعبر عن ذلك
هناك العديد من الطرق لعمل ذلك :
منها هناك حدث يتم إطلاقه عندما يتم تغير حالة الشبة من ال UP يسمى هذا الحدث "Network Availability Changed"
يمكنك عن طريق ذلك قراءة حالة الإتصال بالشبكة هل هو UP ام Down ام مااذا ؟؟
bool CurrNStat = false;
NetworkInterface[] mynic = NetworkInterface.GetAllNetworkInterfaces();
foreach (NetworkInterface ncc in mynic)
{
if((ncc.NetworkInterfaceType != NetworkInterfaceType.Loopback) && (ncc.OperationalStatus == OperationalStatus.Up))
{
CurrNStat = true;
}
}
NetworkChange.NetworkAvailabilityChanged += new NetworkAvailabilityChangedEventHandler(NetworkChange_NetworkAvailabilityChanged);
void NetworkChange_NetworkAvailabilityChanged(object sender, NetworkAvailabilityEventArgs e)
{
networkIsAvailable = e.IsAvailable;
MessageBox.Show("Network availability: " + networkIsAvailable);
}ولكن هذه الطريقة غير عملية ابداً وافضّل ان تقوم بعمل ping ل Google ولو استجاب فهذا يعني ان النت يعمل تمام
System.Net.WebClient
public static bool CheckForInternetConnection()
{
try
{
using (var client = new WebClient())
using (var stream = client.OpenRead("http://www.google.com"))
{
return true;
}
}
catch
{
return false;
}
}اعتقد ان هذه الطريق افضل حتى من طريقة ال ping التقليدية :D
بالتوفيق ان شاء الله
{ وَيَوْمَ تَقُومُ السَّاعَةُ يُقْسِمُ الْمُجْرِمُونَ مَا لَبِثُوا غَيْرَ سَاعَةٍ ۚ كَذَٰلِكَ كَانُوا يُؤْفَكُونَ () وَقَالَ الَّذِينَ أُوتُوا الْعِلْمَ وَالْإِيمَانَ لَقَدْ لَبِثْتُمْ فِي كِتَابِ اللَّهِ إِلَىٰ يَوْمِ الْبَعْثِ ۖ فَهَٰذَا يَوْمُ الْبَعْثِ وَلَٰكِنَّكُمْ كُنْتُمْ لَا تَعْلَمُونَ } الروم 55-56
فعلاً هي تعمل معي وهناك طريقة اخري ايضاً وجدها
using System.Runtime;using System.Runtime.InteropServices;
[DllImport("wininet.dll")]
private extern static bool InternetGetConnectedState(out int Description,int Reservedvalue); int Desc;
string JSS_INTERNET_STATUE = (InternetGetConnectedState(out Desc,0).ToString());
if ( JSS_INTERNET_STATUE == "True")
{
}
else
{
}ولكن اذا اردت اعرف اذا كان الرابط غير موجود او غير صحيح ماذ افعل ؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
كمثال هذا الرابط غير موجود
وهذا الرابط موجود
http://alharbi.site88.net/contact/
اريد ان افرق بينهم
تم تعديل هذه المشاركة بواسطة كارم سامي في 20 مارس 2014 في 12:50