怎么判断本机器能不能访问Internet?(分全部送上)(29分)

  • 主题发起人 主题发起人 Defo_XYF
  • 开始时间 开始时间
D

Defo_XYF

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么判断本机器能不能访问Internet?(分全部送上)
 
ping www.google.com啊!哈哈,用代码来Ping
 
那如何知道通没通呀?
我没做过这方面的东西,有没有代码或例子给我发一个,谢谢了,初学的,请多指教!
xuyanfei5210@163.com
 
PING几个正常的网站,只要其中有一个能PING通,就是可以上INTERNET的了。
还可以PING本地DNS的IP,用代码写PING也可以,懒点的,直接调用PING命令也行。
 
一个我以前写的调用Window的Command的测试程序(就是调用Ping的),改改应该就可以实现你的目标。
unit fTesting;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;

type
TfmTest = class(TForm)
btnTest: TButton;
mmTest: TMemo;
edtTest: TEdit;
cmbxTest: TComboBox;
Button1: TButton;
tmrTest: TTimer;
procedure btnTestClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure tmrTestTimer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
fmTest: TfmTest;

implementation

{$R *.dfm}

procedure TfmTest.btnTestClick(Sender: TObject);
var
strTmp: String;
begin
strTmp := 'COMMAND.COM /C nbtstat ' + cmbxTest.Text + ' ' + edtTest.Text + ' > $temp%';

WinExec(PChar(strTmp), SW_HIDE);
Sleep(1000);
try
try
mmTest.Lines.LoadFromFile('$temp%');
except
;
end;
finally
DeleteFile('$temp%');
end;
end;

procedure TfmTest.Button1Click(Sender: TObject);
var
strTmp: String;
begin
strTmp := 'command.com /c ping -n 10 ' + edtTest.Text + ' > a.txt';
ShowMessage(strTmp);
WinExec(PChar(strTmp),SW_HIDE);
TmrTest.Enabled := True;
end;

procedure TfmTest.tmrTestTimer(Sender: TObject);
begin
mmTest.Lines.LoadFromFile('a.txt');
end;

end.
 
ping一个固定的网站!
这个方法的前提是ping的端口没被防火墙之类的禁止。
 
为什么不搜索一下delphibbs的全文检索呢.

来自:gonghh, 时间:2002-10-8 15:39:00, ID:1364146 | 编辑
测试通过,方法如下:
if InternetCheckConnection('http://www.sohu.com',1,0) then
ShowMessage('ON line')
else
ShowMessage('OFF line');
在uses 中加上wininet。
 
我这个网络是通过代理来实现的.但那也节铁了,谢谢各位!
 
多人接受答案了。
 
后退
顶部