zoukankan      html  css  js  c++  java
  • 宽带连接工具[bat]

    功能概述:

    本工具使用批处理编写,提供自动判断网络状态以决定断开或是连上网络,本月已用宽带时长,到月初自动清零。提供联网日志功能,可以记录下所有的连接或断开网络记录。如果连接失败,自动提示输入密码,特别适合每天要更换动态密码者使用。(windows系统可用)

     

    flash模拟演示(swf加载慢请稍候):

    新标签页观看

    下载flash宽带连接演示.swf

    宽带连接工具下载百度网盘

    bat源码:

      1 @echo off
      2 :retry
      3 ::窗口配置
      4 title 宽带连接工具
      5 mode con cols=50 lines=15 & color 02
      6 
      7 ::检查配置文件是否存在,否,则创建。
      8 if not exist netconfig.ini call:remd
      9 
     10 ::检查配置文件是否符合标准格式,否,则重新创建
     11 findstr . "netconfig.ini">nul && cls||call:remd
     12 Setlocal Enabledelayedexpansion
     13 set bbj1=[宽带连接名称:]
     14 set bbj3=[用户名:]
     15 set bbj5=[密码:]
     16 set bbj7=[本月已用宽带时长]
     17 set bbj9=[时间显示开关]
     18 set bbj11=[宽带时长显示开关]
     19 set bbj13=[上网时间记录开关]
     20 set bbj15=[上次使用时间]
     21 call:extxt
     22 
     23 ::读取配置信息
     24 Setlocal Enabledelayedexpansion
     25 set n=0
     26 For /f "delims=" %%2 in (netconfig.ini) do (
     27 Set /a n+=1 
     28 If !n!==2 set name=%%2
     29 If !n!==4 set user=%%2
     30 If !n!==6 set password=%%2
     31 If !n!==8 set netsc=%%2
     32 If !n!==10 set timekey=%%2
     33 If !n!==12 set netimky=%%2
     34 If !n!==14 set rizhiy=%%2
     35 If !n!==16 set oldtime=%%2
     36 If !n!==17 set olddate=%%2
     37 )
     38 
     39 ::判断月份差,清空宽带时长
     40 set/a "boldm=(1%olddate:~5,2%-100)"
     41 REM echo %boldm%
     42 set/a "bm=(1%date:~5,2%-100)"
     43 REM echo %bm%
     44 set/a "cmon=%bm%-%boldm%
     45 if not %cmon%==0 call:rewrite 8 000000
     46 rem echo %netsc%
     47 REM echo %cmon%
     48 ::对宽带时长进行变形
     49 set/a "bnewsc1=%netsc%/3600
     50 set/a "bnewsc2=%netsc%%%3600/60
     51 set/a "bnewsc3=%netsc%%%3600%%60
     52 set   "bnewsc=%bnewsc1%小时%bnewsc2%分%bnewsc3%秒
     53 rem echo %bnewsc% %bnewsc1% %bnewsc2% %bnewsc3%
     54 rem echo %name% %user% %password%
     55 
     56 
     57 call:clshow
     58 ::检测宽带状态自动判断连接或是断开
     59 ::断开,并判定结果
     60 rasdial|find "已连接">nul
     61 if %errorlevel%==0 (
     62 rasdial %name% /DISCONNECT
     63 if %errorlevel%==0 (
     64 echo 网络已成功断开!
     65 rem ping /n 2 127.1 >nul  
     66 call:wrizi 网络成功断开
     67 call:kdsclj
     68 call:rewrite 16 "%time%" 17 %date%
     69 rem ping /n 2 127.1 >nul 
     70 exit
     71 )
     72 if not %errorlevel%==0 (
     73 echo 网络断开失败!
     74 ping /n 10 127.1 >nul & exit
     75 )
     76 )
     77 
     78 
     79 ::连接,并判定,更改
     80 if %errorlevel%==1 (
     81   rasdial %name% %user% %password%
     82   rasdial|find "已连接">nul
     83   if !errorlevel!==0 (
     84   echo 网络已成功连接!
     85   call:wrizi 网络成功连接
     86   call:rewrite 16 "%time%" 17 %date%
     87   ping /n 2 127.1 >nul 
     88   exit
     89   )
     90   if not !errorlevel!==0 (
     91   call:clshow & color 0e
     92   echo 网络连接失败!
     93   echo -----------------------------
     94   echo 更改宽带连接名称,请输入#
     95   echo 更改账号,请输入*
     96   echo 更改密码,请直接输入密码
     97   set /p newpass=
     98   if !newpass!==* (
     99   echo 请输入账号:
    100   set /p newuser=
    101   call:rewrite 4 !newuser! & goto:retry 
    102   )
    103   if !newpass!==# (
    104   echo 请输入宽带连接名称:
    105   set /p newname=
    106   call:rewrite 2 !newname! & goto:retry 
    107   )
    108   if not !newpass!==* if not !newpass!==# (
    109   call:rewrite 6 !newpass! & goto:retry 
    110    )
    111   )
    112 )
    113  
    114 ::测试结尾
    115 rem echo 测试完成,按任意键退出。&pause>nul
    116 
    117 
    118 ::子程序
    119 
    120 
    121 ::清屏,重显
    122 :clshow
    123 cls
    124 echo 欢迎使用宽带连接工具!
    125 if %timekey%==1 echo 现在时间 %date% %time%
    126 echo 当前账号:%user%
    127 if %netimky%==1 echo 本月已用宽带时长:%bnewsc%
    128 goto:eof
    129 
    130 
    131 ::更改配置文件
    132 :rewrite
    133 Setlocal Enabledelayedexpansion
    134 set index=0
    135 for /f "delims=" %%i in (netconfig.ini) do (
    136  set /a index+=1
    137  set var!index!=%%i
    138 )
    139 set var%1=%2
    140 set var%3=%4
    141 (for /l %%i in (1 1 !index!) do echo !var%%i!)>netconfig.ini
    142 goto:eof
    143 
    144 
    145 ::重新创建配置文件
    146 :remd
    147 rem pause
    148 echo [宽带连接名称:]>"netconfig.ini"
    149 for %%1 in (
    150 宽带连接
    151 [用户名:]
    152 12345678910
    153 [密码:]
    154 123456
    155 [本月已用宽带时长]
    156 000000
    157 [时间显示开关]
    158 1
    159 [宽带时长显示开关]
    160 1
    161 [上网时间记录开关]
    162 0
    163 [上次使用时间]
    164 "%time%"
    165 %date%
    166 )do echo %%1>>"netconfig.ini"
    167 goto:retry
    168 rem echo 欢迎使用宽带连接工具!
    169 goto:eof
    170 
    171 
    172 ::检测配置是否合法,否则,重置
    173 :extxt
    174 set n=0
    175 Setlocal Enabledelayedexpansion
    176 For /f "delims=" %%i in (netconfig.ini) do (
    177 Set /a n+=1 
    178 set bb!n!=%%i
    179 rem echo bb!n!=%%i
    180 )
    181 for /l %%i in (1 2 15) do (
    182 rem if  !bb%%i! neq !bbj%%i! echo "!bb%%i!""!bbj%%i!"&pause>nul
    183 if  !bb%%i! neq !bbj%%i! call:remd 
    184 )
    185 goto:eof
    186 
    187 ::宽带计时累加(支持跨天)
    188 :kdsclj
    189 set/a "boldt=(1%olddate:~8,2%-100)*3600*24+(%oldtime:~1,2%)*3600+(1%oldtime:~4,2%-100)*60+(1%oldtime:~7,2%-100)"
    190 set/a "bt=(1%date:~8,2%-100)*3600*24+(%time:~0,2%)*3600+(1%time:~3,2%-100)*60+(1%time:~6,2%-100)"
    191 set/a "ctime=%bt%-%boldt%
    192 set/a "newsc=%netsc%+%ctime%
    193 call:rewrite 8 %newsc%
    194 goto:eof
    195 
    196 ::写入日志
    197 :wrizi
    198 if %rizhiy%==1 echo %date% %time%   %1 >> 网络连接日志.txt 
    199 for %%i in (网络连接日志.txt )do if %%~zi GTR 10485760 del "%%i"
    200 goto:eof
     将以上代码复制保存为x.bat即可。

    宽带连接下载链接百度网盘

     

     


     

    date:2013-12-13

  • 相关阅读:
    [Swift]GZip字符串压缩和解压缩(Java/C#通用)
    [XCode]UI测试/单元测试
    转 oracle apex 使用
    转 pygame学习笔记(1)——安装及矩形、圆型画图
    转 11g RAC R2 体系结构---Grid
    转如何升级oracle版本?(11.2.0.1至11.2.0.4)
    ORA-14074: partition bound must collate higher than that of the last partition
    12c pdb expdp use DATA_PUMP_DIR meet ORA-39145
    转【Python】Python-skier游戏[摘自.与孩子一起学编程]
    Dock
  • 原文地址:https://www.cnblogs.com/pxyufeng/p/4159171.html
Copyright © 2011-2022 走看看