如何判断出当前网络连接方式?

cbfans 2003-10-29 09:37:42
想知道系统是经过什么方式连接上internet的
MODEM还是LAN?
...全文
86 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
cbfans 2003-10-29
  • 打赏
  • 举报
回复
谢谢各位了
mixtrue 2003-10-29
  • 打赏
  • 举报
回复
同意 netsys2(来电) 的看法,但是检测并不是时时的,加入你拔掉你的网线,网络的连接还存在,她的状态还是online,而此时你已经不能使用网络了。只有等到连接过了他的生命期以后他的状态才是offline。所以你必须等待一定的时间来使网络timeout。所以如果你做得的是时时系统,你的注意这些。

你必须时时发ping报 来监测你的网络连接情况。
codecb 2003-10-29
  • 打赏
  • 举报
回复
uses wininet;
Function ConnectionKind :boolean;
var flags: dword;
begin
Result := InternetGetConnectedState(@flags, 0);
if Result then
begin
if (flags and INTERNET_CONNECTION_MODEM) = INTERNET_CONNECTION_MODEM then
begin
showmessage('Modem');
end;
if (flags and INTERNET_CONNECTION_LAN) = INTERNET_CONNECTION_LAN then
begin
showmessage('LAN');
end;
if (flags and INTERNET_CONNECTION_PROXY) = INTERNET_CONNECTION_PROXY then
begin
showmessage('Proxy');
end;
if (flags and INTERNET_CONNECTION_MODEM_BUSY)=INTERNET_CONNECTION_MODEM_BUSY then
begin
showmessage('Modem Busy');
end;
end;
end;

Delphi的挺全的
netsys2 2003-10-29
  • 打赏
  • 举报
回复
#include <wininet.h>
DWORD dwFlag;
bool netLink = InternetGetConnectedState(&dwFlag,0);

if( netLink )
Label4->Caption="在线"; //
else Label4->Caption="未在线";

// 网络配置
if(dwFlag & INTERNET_CONNECTION_MODEM) Label1->Caption="√ Yes"; //MODEM连接
else Label1->Caption="× No";
if(dwFlag & INTERNET_CONNECTION_LAN) Label2->Caption="√ Yes"; //LAN连接
else Label2->Caption="× No";
我不懂电脑 2003-10-29
  • 打赏
  • 举报
回复
用RAS API检查拨号是否启动就知道了。

1,316

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 网络及通讯开发
社区管理员
  • 网络及通讯开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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