当前位置:编程学习 > VB >>

VB代码中如何ping目标IP?


“重启计算机是Option1”   "关闭计算机是Option2"
check1是开机自动启动本程序
check2是最小化到拖盘图标

我的要求一是:
在单击Command1时
在Combo1当中可选“星期一,星期二.....星期六,星期日”在text1.text当中的时间格式/24小时制
判断当前是否是多用户。如果是多用户则注销另一个用户来执行当前用户的操作
再判断text1.text中是否为时间格式 时-分-秒 如果不是MSGBOX"时间格式错误"
如果是MSGBOX "你输入的时间为" & text1.text

当系统时间刚好=Combo1选中的星期天数和text1.text当中的时间时再判断选中的是check1还是check2
如果是check1就正常的重新启动计算机,如果是check2就关闭计算机。
 并在label1当中显示系统时间。让Timer控件每秒刷新一次label1中的系统时间
 label2当中也显示离系统重启/关机时间还剩:X天X时X分X秒
在单击Command2时 停止计时停止重启或者关机操作

我的要求二是:
单击Command5时
执行网络是否与text2.text text3.text中输入的IP相通 类似于PING
判断text2.text text3.text 中输入的是否为IP地址的格式。如果不是,MSGBOX“IP地址格式错误”
如果是则 开始检测。并在label6 检测Ping中......这里显示出来。Timer控件每秒刷新label6
当其中一个IP地址检测出掉线后则在Label6这里显示 IP XXX:XXX:XXX:XXX正常 IP XXX:XXX:XXX掉线
如果两个IP都掉线后则在label6那里显示 两个IP地址全部掉线。可能全局停电!
如果检测掉线后60秒内还未上线则 照text4.text中输入的秒数倒计时关机并在label6这里显示离关机时间还剩XXX秒
单击Command6时
中止网络检测并停止Command5的单击事件

我的要求三是:
单击Command3时
让所有设置回到初使化

我的要求四是:
判断check2是否被选中,如果没有选中则
单击 _口X 这里的关闭按扭=最小化到状态栏
如果check2被选中则单击_口X 这里的关闭按扭 让窗体最小化到拖盘而不在状态栏显示
判断check1是否被选中
如果是 则自动将当前设置保存到本软件同级目录下的ini文件。并让此软件在注册表启动项中加载为开机自动启动,并读取已保存的ini文件来还原关机前的设置!
如果未被选中则删除注册表中开机启动项里的键值

请高手赐教,本人在线等!
 相信自己能力的  在下斗胆请您留下联系方式! 谢谢 --------------------编程问答-------------------- UPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUPUP --------------------编程问答-------------------- ???
貌似标题和问题牛头不对马嘴 --------------------编程问答--------------------
引用 2 楼 xuggzu 的回复:
???
貌似标题和问题牛头不对马嘴



哎...楼主有精神分裂 --------------------编程问答-------------------- up. --------------------编程问答--------------------

Function pingnet()
    Dim FileFile As Integer
    Dim TestString As String
    On Error Resume Next

    Kill "Test.bat"
    Kill "Test.txt"
    '产生一个文字档 Test.txt,写入一个 '0' 字
    TestString = "command.com /c echo 0 > Test.txt"
    Shell (TestString), vbHide

    '建立一个 Bat 档,在这个 Bat 档中,我们会设定:
    '随便 Ping 一个在 Internet 上的 Server 二次,将结果写入文字档 Test.txt
    '在这伫, 我们以 Ping www.hinet.net 为例
    FileFile = FreeFile
    Open ("Test.bat") For Binary As FileFile
    TestString = "ping -n 2 " & Trim(Form6.Text1.Text) & " > Test.txt"
    Put #FileFile, , TestString
    Close FileFile

    '================
    '开始检查是否连线
    '================
    '执行我们建立的 Bat 档 --> Ping
    TestString = "command.com /c Test.bat"
    Shell (TestString), vbHide
    '如果 Ping 成功, 写入文字档 Test.txt 的字串长度至少会大于 200
    '不过由于 Ping 的动作会延迟几秒钟,所以,我们让程式等待 5 秒钟
    Delay (5)
    'aa = FileLen(App.Path & "\Test.txt")
    If FileLen("Test.txt") > 350 Then
        Label2(3).Caption = "报警状态:目前系统运行正常"
    Else
        Label2(3).Caption = "报警状态:网络通讯断!请检查。"
    End If

    '删除我们在程式中产生的二个档案
    Kill "Test.bat"
    Kill "Test.txt"
End Function
--------------------编程问答-------------------- 引用 2 楼 xuggzu 的回复:

???
貌似标题和问题牛头不对马嘴

乱吸引目光
补充:VB ,  控件
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,