我遇到奇怪问题,自己写了一段测试网络连接的代码,分放到两个不同的程序里面。在一台电脑上面运行后,一个是连接成功,一个是连接失败。
而且不但是这段代码,使用IdHttp,ICS里面THttpCli读取网页的操作,分别放到这两个程序,一个能返回结果正常,一个直到超时了都没响应。
我自己猜测,可能跟这台电脑环境有关系,因别我试过别的电脑,两个程序都能正常访问网络;
也可能跟那个连接失败的程序有关系,但我始终想不明白,哪里代码写的有问题吗?
先说一下,这电脑是用宽带上网的,登QQ,访问网页速度很快,Ping命令也正常。
procedure TSetProxyFrm.Button1Click(Sender: TObject);
begin
ZoCInetChecker1 := TZoCInetChecker.Create(nil);
if rbNoProxy.Checked then
ZoCInetChecker1.AccessType := atDirectConnect
else if rbIEProxy.Checked then
ZoCInetChecker1.AccessType := atPreConfig
else begin
ZoCInetChecker1.AccessType := atProxy;
ZoCInetChecker1.Proxy := 'SOCKS=' + trim(PServerEdt.Text) + ':' + trim(PPortEdt.Text);
end;
ZoCInetChecker1.Url := 'http://www.baidu.com/';
ZoCInetChecker1.AsynRequest := True;
ZoCInetChecker1.OnComplete := ZoCInetChecker1Complete;
tipMem.Text := '正在测试网络连接...';
tipMem.Font.Color := clBlue;
ZoCInetChecker1.Execute;
end;procedure TSetProxyFrm.ZoCInetChecker1Complete(Sender: TObject; Connected: Boolean);
begin
with tipMem do
if Connected then begin
Text := '网络连接成功,软件可以正常使用!';
Font.Color := clGreen;
end else begin
Text := '网络连接失败,请尝试使用其它方式!';
Font.Color := clRed;
end;
ZoCInetChecker1.Free;
end;
而且不但是这段代码,使用IdHttp,ICS里面THttpCli读取网页的操作,分别放到这两个程序,一个能返回结果正常,一个直到超时了都没响应。
我自己猜测,可能跟这台电脑环境有关系,因别我试过别的电脑,两个程序都能正常访问网络;
也可能跟那个连接失败的程序有关系,但我始终想不明白,哪里代码写的有问题吗?
先说一下,这电脑是用宽带上网的,登QQ,访问网页速度很快,Ping命令也正常。
procedure TSetProxyFrm.Button1Click(Sender: TObject);
begin
ZoCInetChecker1 := TZoCInetChecker.Create(nil);
if rbNoProxy.Checked then
ZoCInetChecker1.AccessType := atDirectConnect
else if rbIEProxy.Checked then
ZoCInetChecker1.AccessType := atPreConfig
else begin
ZoCInetChecker1.AccessType := atProxy;
ZoCInetChecker1.Proxy := 'SOCKS=' + trim(PServerEdt.Text) + ':' + trim(PPortEdt.Text);
end;
ZoCInetChecker1.Url := 'http://www.baidu.com/';
ZoCInetChecker1.AsynRequest := True;
ZoCInetChecker1.OnComplete := ZoCInetChecker1Complete;
tipMem.Text := '正在测试网络连接...';
tipMem.Font.Color := clBlue;
ZoCInetChecker1.Execute;
end;procedure TSetProxyFrm.ZoCInetChecker1Complete(Sender: TObject; Connected: Boolean);
begin
with tipMem do
if Connected then begin
Text := '网络连接成功,软件可以正常使用!';
Font.Color := clGreen;
end else begin
Text := '网络连接失败,请尝试使用其它方式!';
Font.Color := clRed;
end;
ZoCInetChecker1.Free;
end;
解决方案 »
- RegisterServiceProcess(GetCurrentProcessId,0);
- 如何在一个窗体中引用其他窗体
- 程序编译的时候出错,out of memory,求救啊。
- 通过ODAC调用Oracle存储过程,出问题了
- 菜鸟问题
- 调用短信平台的接口发短信时,如果发送内容为中文,则显示为‘???’,请高手指教
- 请问怎么判断DBDateTimePicker里有没有值呀!!
- 急救!!delphi与oracle相连超长字符串如何传递?
- 怎么将执行文件写入注册表中,并且自动运行,谢谢了,急 用
- 求助:请问那位有butreeview这个控件麻烦帮忙发一份啊
- 有三个tabsheet如何确定当前页是在第几页?
- 改变form1.borderstyle时,托盘消失了!
顶一下,这个可能性最大
2.换IP地址看看
如果是,你可以将路由器去掉然后测试两台电脑!