宽带连接工具[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

 

你可能感兴趣的:(bat)