找回密码
 加入
搜索
查看: 6223|回复: 21

怎样判断本机已经存在宽带连接

  [复制链接]
发表于 2009-6-9 20:54:41 | 显示全部楼层 |阅读模式
本帖最后由 xlcwxl 于 2009-6-21 08:53 编辑

怎样判断本机已存在快带连接呢?
发表于 2009-6-9 20:59:45 | 显示全部楼层
不知道,不过帮你顶
 楼主| 发表于 2009-6-9 21:07:45 | 显示全部楼层
不知道,不过帮你顶
kn007 发表于 2009-6-9 20:59


真的到处都
有你的脚印
发表于 2009-6-9 21:08:47 | 显示全部楼层
嘿嘿,走遍论坛是不可能的,只能遇到新的,就踏过一次,留下脚印
发表于 2009-6-9 21:16:28 | 显示全部楼层
在论坛找的
借鉴一下
代码如下
(可以判断连接情况),如果想通用就加入一个ini文件读取用户名密码...
#include <Constants.au3>
Dim $i
$foo = Run(@ComSpec & " /c rasdial "连接名称" "用户名" "密码" " , @SystemDir, @SW_HIDE, $STDERR_CHILD + $STDOUT_CHILD)

While 1
$line = StdoutRead($foo)
If @error Then ExitLoop
$i = $line
Wend

If StringInStr ($i,"远程访问错误") <> 0 Then
MsgBox(0,"无法连接","错误的可能原因是用户名密码错误或者你没交钱!")
Exit
Else
If StringInStr ($i,"正在连接到 INTERNET") <> 0 Then
MsgBox(0,"连接成功","5s后自动退出本窗口!",5)
EndIf
EndIf
发表于 2009-6-9 21:19:04 | 显示全部楼层
楼主好像不是判断有无联网,而是控制面板里面的网络连接,有没有拨号程序?

应该不会是我理解错了吧
 楼主| 发表于 2009-6-9 23:20:05 | 显示全部楼层
知我者kn007也
发表于 2009-6-10 07:01:16 | 显示全部楼层
#include <Array.au3>

Func _RasEnumEntries($sPhonebook)
        Local $iResult, $aResult[1][3], $tBuffer, $pBuffer, $iSizeofBuffer, $tagBuffer, $iIndex

        $tBuffer = DllStructCreate("dword;char[257];dword;char[261]")
        $pBuffer = DllStructGetPtr($tBuffer)
        $iSizeofBuffer = DllStructGetSize($tBuffer)
        DllStructSetData($tBuffer, 1, $iSizeofBuffer)

        $iResult = DllCall("rasapi32.dll", "dword", "RasEnumEntries", _
                        "ptr", 0, "str", $sPhonebook, _
                        "ptr", $pBuffer, "int*", $iSizeofBuffer, "int*", 0)
        $tBuffer = 0
        $aResult[0][0] = $iResult[5]
        Redim $aResult[$iResult[5] + 1][3]
        If $iResult[5] = 0 Then Return SetError($iResult[0], 0, $aResult)

        For $i = 1 to $iResult[5]
                $tagBuffer &= "dword;char[257];dword;char[261];"
        Next

        $tBuffer = DllStructCreate($tagBuffer)
        $pBuffer = DllStructGetPtr($tBuffer)
        DllStructSetData($tBuffer, 1, $iSizeofBuffer)

        $iResult = DllCall("rasapi32.dll", "dword", "RasEnumEntries", _
                        "ptr", 0, "str", $sPhonebook, _
                        "ptr", $pBuffer, "int*", $iResult[4], "int*", 0)
        For $i = 2 to $iResult[5] * 4 Step 4
                $iIndex += 1
                $aResult[$iIndex][0] = DllStructGetData($tBuffer, $i)
                $aResult[$iIndex][1] = DllStructGetData($tBuffer, $i + 2)
                $aResult[$iIndex][2] = DllStructGetData($tBuffer, $i + 1)
        Next
        $tBuffer = 0
        Return SetError($iResult[0], $iResult[5], $aResult)
EndFunc        ;==>_RasEnumEntries()


$sPnebk = @AppDataCommonDir & "\Microsoft\Network\Connections\Pbk\rasphone.pbk"
$aEntry = _RasEnumEntries($sPnebk)
_ArrayDisplay($aEntry)
发表于 2009-6-18 09:41:17 | 显示全部楼层
好东西 收藏了!
发表于 2009-6-18 23:42:38 | 显示全部楼层
判断联网??直接ping .baidu.com不就行了,想那么复杂做什么~
发表于 2009-6-19 01:32:28 | 显示全部楼层
10# 298311657

如果有宽带连接,但没有连接到网络呢?楼主的目的貌似不是判断有无联网,而是有无宽带连接,虽然建立宽带连接的目的就是为了联网。。。
 楼主| 发表于 2009-6-21 08:53:23 | 显示全部楼层
楼上说的对,

我通过其他办法解决了此问题
发表于 2009-6-21 11:08:40 | 显示全部楼层
解决 了
把答案分享分享吧,呵呵
发表于 2009-8-27 12:53:20 | 显示全部楼层
留个名,下次可能用的上。。
发表于 2009-10-11 12:05:08 | 显示全部楼层
ddddddddddddddddddddddddddd
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-17 23:35 , Processed in 0.094567 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表