我怎么知道当前计算机是否在线?

monday 2000-03-16 11:36:00
...全文
301 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
surfman 2000-06-09
  • 打赏
  • 举报
回复
对于本机拨号上网,可以用RasEnumConnections实现;
通过局域网上网则比较麻烦,如果是GATEWAY方式,则可以ping通,
如果是代理服务器方式则ping不出去。
wxz 2000-03-29
  • 打赏
  • 举报
回复
// 试一下吧
#include <RAS.H>
BOOL Check(void)
{
RASCONN ras[20];
DWORD dSize,dNumber,dCount;
ras[0].dwSize = sizeof(RASCONN);
dSize = sizeof( ras );
if( RasEnumConnections( ras, &dSize, &dNumber ) == 0 )
if(dNumber>0)return TRUE;
return FALSE;
}
monday 2000-03-25
  • 打赏
  • 举报
回复
我想说清楚一点,我用Delphi的Internet中的某个控件,如NMPOP3,在我用此控件的connect方法时,会自动弹出连接窗口,但再过一会,将Raise一个超时错误,我想在使用此方法之前,简单的判断当前是否已连接。最好详细点。小弟这里先谢谢了。
yqpen 2000-03-23
  • 打赏
  • 举报
回复
用ping 试试!!!
sbhnet 2000-03-20
  • 打赏
  • 举报
回复
ping 一下
csdn2000 2000-03-17
  • 打赏
  • 举报
回复
请将问题描述得更详细点!
kxy 2000-03-17
  • 打赏
  • 举报
回复
如果你是单机,取得本机的IP地址,不是127.0.0.0就是上网了,如果你是
通过局域网比教麻烦,不管是否上网IP都不是127.0.0.0,一个是你原来的IP
一个是上网后的IP.不知道如何处理:(
procedure TForm1.ButtonIPClick(Sender: TObject);
type
TaPInAddr = Array[0..10] of PInAddr;
PaPInAddr = ^TaPInAddr;
var
phe: PHostEnt;
pptr: PaPInAddr;
Buffer: Array[0..63] of Char;
I: Integer;
GInitData: TWSAData;
IP: String;
begin
Screen.Cursor := crHourGlass;
try
WSAStartup($101, GInitData);
IP:='0.0.0.0';
GetHostName(Buffer, SizeOf(Buffer));
phe := GetHostByName(buffer);
if phe = nil then
begin
ShowMessage(IP);
Exit;
end;
pPtr := PaPInAddr(phe^.h_addr_list);
I := 0;
while pPtr^[I] <> nil do
begin
IP := inet_ntoa(pptr^[I]^);
Inc(I);
end;
WSACleanup;
ShowMessage(IP);
finally
Screen.Cursor := crDefault;
end;
end;

sunsetyang 2000-03-17
  • 打赏
  • 举报
回复
在windows9x下用winipcfg查看自己的拨号设备的ip,如果有,则是在线;在winnt用ipconfig查看.
kxy 2000-03-17
  • 打赏
  • 举报
回复
ping某个地址,如www.internet.com看是否可以ping通
www.midatech.com/kxy有Ping的VC的Source
Un1 2000-03-17
  • 打赏
  • 举报
回复
学习
monday 2000-03-17
  • 打赏
  • 举报
回复
我有一个跟Internet有关的任务,但执行前,我想知道当前是否已经拨号上网.

4,356

社区成员

发帖
与我相关
我的任务
社区描述
通信技术相关讨论
社区管理员
  • 网络通信
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧