easyDelphi Q&A
+2 تصويتات
55 مشاهدات

كيف اتحقق من اتصالي بالانترنت 

ارسد ان اعلم المستخدم عند وجود انترنت و عند انقطاعها كدالك شطرااا

سُئل في تصنيف vcl بواسطة (6,450 نقاط) | 55 مشاهدات
 

2 إجابة

+3 تصويتات
أفضل إجابة

اعمل ping بواسطة IdIcmpClient الذي يأتي مع Indy

procedure TForm1.IdIcmpClient1Reply(ASender: TComponent; const AReplyStatus: TReplyStatus);
begin
	if IdIcmpClient1.ReplyStatus.BytesReceived = 0 then
  	    Label1.Caption := 'not online'
	else
  		Label1.Caption := 'online';
end;

procedure DoPing;
begin
	IdIcmpClient1.ReceiveTimeout := 200;
	IdIcmpClient1.Host := '8.8.8.8';
	IdIcmpClient1.Ping;
end;


المرجع

https://stackoverflow.com/questions/38083856/indy-tidicmpclient-how-to-detect-a-timeout

تم الرد عليه بواسطة (11,940 نقاط)
مختارة بواسطة
هذا الجواب هو الصحيح لأن عملية "Ping" تعمل حتى و إن كان هناك مشكل في الحاسوب (مثلا مشكل في DNS أو مشكل في "FireWall" إما من طرف "Antivirus" أو من طرف الوينداوز نفسه ... أو أحيانا يكون هناك خلل في "IExplorer" من ناحية البروكسي و غيرها .....ألخ) المهم يبقى البينق "Ping" هو الحل لفحص و تفقد إن كان هناك فعلا تدفق أم لا .... و أحسن سرفر هو سرفر "Google" ===> "Ping www.google.com" ... و شكرا.
+3 تصويتات
uses
   Windows, wininet;


procedure TForm1.Button1Click(Sender: TObject);
var
  Flags: Windows.DWORD; // flags to pass to API function
  con: boolean;
begin
  Flags := 0;
  con := WinInet.InternetGetConnectedState(@Flags, 0);
  if con then ShowMessage('متصل بلانترنيت')
  else ShowMessage('غير متصل بلانترنيت');
end;       

 

تم الرد عليه بواسطة (920 نقاط)

اسئلة متعلقة

+4 تصويتات
2 إجابة
سُئل أغسطس 11، 2018 في تصنيف vcl بواسطة KHALED (6,450 نقاط) | 60 مشاهدات
+1 تصويت
1 إجابة
سُئل نوفمبر 15، 2018 في تصنيف vcl بواسطة Amar Gozim (10,530 نقاط) | 89 مشاهدات
+3 تصويتات
2 إجابة
سُئل نوفمبر 6، 2018 في تصنيف vcl بواسطة MohammedAmine (330 نقاط) | 63 مشاهدات
+3 تصويتات
2 إجابة
سُئل سبتمبر 3، 2018 في تصنيف vcl بواسطة َAbdallah (2,100 نقاط) | 62 مشاهدات
+4 تصويتات
1 إجابة
سُئل أغسطس 5، 2018 في تصنيف vcl بواسطة َAbdallah (2,100 نقاط) | 36 مشاهدات
ادعُ اصدقائك في الفايسبوك لمشاركتك
Comodo SSL

مرحبًا بك إلى EasyDelphi Q&A، حيث يمكنك طرح الأسئلة والحصول على الإجابة عليها من المستخدمين الآخرين.

لا يسمح بطلب او السؤال عن كراك او تفعيل او كسر او فك او اي شيء يخالف اتفاقيات الترخيص  مهما كان السبب ومهما كان البرنامج ونوعه. ولا حتى نشر روابط تحتوي على مثل هذه الاشياء لا في الاسئلة ولا في الاجابات ولا التعليقات . نهائيا

292 سؤال
497 إجابة
870 تعليق
192 مستخدم