如何在程序中判断广域网和局域网?请各位大虾指点,不会的请帮忙顶下,谢谢.

解决方案 »

  1.   

    function IsOnline:boolean;
    var
        dwFlags: DWORD;
    begin
        dwFlags := INTERNET_CONNECTION_MODEM + INTERNET_CONNECTION_LAN + INTERNET_CONNECTION_PROXY ;
        //取得网络连接状态
        result := InternetGetConnectedState(@dwFlags, 0);
    end;procedure TForm1.Button1Click(Sender: TObject);
    begin
        if IsOnline then
            ShowMessage('Network is online.')
        else
            ShowMessage('Network is not online.');
    end;
      

  2.   

    procedure TForm1.Button1Click(Sender: TObject);
    begin 
      if GetSystemMetrics(SM_NETWORK) AND $01 = $01 then
        ShowMessage('您的机器连接到了互联网上')
      else
       ShowMessage('您的机器没有连接到互联网上');
    end;
      

  3.   

    局域网有固定的IP地址的,你看看网上邻居里面属性TCP/LP协议里
      

  4.   

    wywry(Wyatt) :那个判断那里写在那里的啊?mlknjb01() :IP判断怎么行?在程序很难判断的啊?
      

  5.   


    何为WAN? 何为LAN? 你的电脑直接连在WAN上就是WAN, 其它的都是LAN? 通过IP判断吧...如果本机IP是192.160.X.X, 你可以认为是LAN(当然不只这些, 但能包含大多数情况了)
      

  6.   

    if InternetCheckConnection('http://www.csdn.net/', 1, 0) then
       showmessage('可以访问互联网') else showmessage('不可访问互联网');