easyDelphi Q&A
+1 تصويت
45 مشاهدات

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

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

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

2 إجابة

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

اعمل 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

تم الرد عليه بواسطة (7,040 نقاط)
مختارة بواسطة
هذا الجواب هو الصحيح لأن عملية "Ping" تعمل حتى و إن كان هناك مشكل في الحاسوب (مثلا مشكل في DNS أو مشكل في "FireWall" إما من طرف "Antivirus" أو من طرف الوينداوز نفسه ... أو أحيانا يكون هناك خلل في "IExplorer" من ناحية البروكسي و غيرها .....ألخ) المهم يبقى البينق "Ping" هو الحل لفحص و تفقد إن كان هناك فعلا تدفق أم لا .... و أحسن سرفر هو سرفر "Google" ===> "Ping www.google.com" ... و شكرا.
+2 تصويتات
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;       

 

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

اسئلة متعلقة

+2 تصويتات
2 إجابة
سُئل أغسطس 11 في تصنيف vcl بواسطة KHALED (3,390 نقاط) | 40 مشاهدات
+2 تصويتات
1 إجابة
سُئل أغسطس 5 في تصنيف vcl بواسطة َAbdallah (1,310 نقاط) | 26 مشاهدات
0 تصويتات
2 إجابة
سُئل منذ 2 أيام في تصنيف vcl بواسطة Yamada Fakir (240 نقاط) | 42 مشاهدات
+1 تصويت
1 إجابة
سُئل أغسطس 11 في تصنيف vcl بواسطة Faycal Benmerghid (130 نقاط) | 36 مشاهدات
+1 تصويت
1 إجابة
سُئل أغسطس 6 في تصنيف vcl بواسطة KHALED (3,390 نقاط) | 35 مشاهدات
ادعُ اصدقائك في الفايسبوك لمشاركتك

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

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

162 سؤال
327 إجابة
527 تعليق
104 مستخدم