功能概述:

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

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

新标签页观看

下载flash:宽带连接演示.swf

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

bat源码:

 @echo off
:retry
::窗口配置
title 宽带连接工具
mode con cols= lines= & color ::检查配置文件是否存在,否,则创建。
if not exist netconfig.ini call:remd ::检查配置文件是否符合标准格式,否,则重新创建
findstr . "netconfig.ini">nul && cls||call:remd
Setlocal Enabledelayedexpansion
set bbj1=[宽带连接名称:]
set bbj3=[用户名:]
set bbj5=[密码:]
set bbj7=[本月已用宽带时长]
set bbj9=[时间显示开关]
set bbj11=[宽带时长显示开关]
set bbj13=[上网时间记录开关]
set bbj15=[上次使用时间]
call:extxt ::读取配置信息
Setlocal Enabledelayedexpansion
set n=
For /f "delims=" %% in (netconfig.ini) do (
Set /a n+=
If !n!== set name=%%
If !n!== set user=%%
If !n!== set password=%%
If !n!== set netsc=%%
If !n!== set timekey=%%
If !n!== set netimky=%%
If !n!== set rizhiy=%%
If !n!== set oldtime=%%
If !n!== set olddate=%%
) ::判断月份差,清空宽带时长
set/a "boldm=(1%olddate:~5,2%-100)"
REM echo %boldm%
set/a "bm=(1%date:~5,2%-100)"
REM echo %bm%
set/a "cmon=%bm%-%boldm%
if not %cmon%== call:rewrite
rem echo %netsc%
REM echo %cmon%
::对宽带时长进行变形
set/a "bnewsc1=%netsc%/3600
set/a "bnewsc2=%netsc%%%3600/60
set/a "bnewsc3=%netsc%%%3600%%60
set "bnewsc=%bnewsc1%小时%bnewsc2%分%bnewsc3%秒
rem echo %bnewsc% %bnewsc1% %bnewsc2% %bnewsc3%
rem echo %name% %user% %password% call:clshow
::检测宽带状态自动判断连接或是断开
::断开,并判定结果
rasdial|find "已连接">nul
if %errorlevel%== (
rasdial %name% /DISCONNECT
if %errorlevel%== (
echo 网络已成功断开!
rem ping /n 127.1 >nul
call:wrizi 网络成功断开
call:kdsclj
call:rewrite "%time%" %date%
rem ping /n 127.1 >nul
exit
)
if not %errorlevel%== (
echo 网络断开失败!
ping /n 127.1 >nul & exit
)
) ::连接,并判定,更改
if %errorlevel%== (
rasdial %name% %user% %password%
rasdial|find "已连接">nul
if !errorlevel!== (
echo 网络已成功连接!
call:wrizi 网络成功连接
call:rewrite "%time%" %date%
ping /n 127.1 >nul
exit
)
if not !errorlevel!== (
call:clshow & color 0e
echo 网络连接失败!
echo -----------------------------
echo 更改宽带连接名称,请输入#
echo 更改账号,请输入*
echo 更改密码,请直接输入密码
set /p newpass=
if !newpass!==* (
echo 请输入账号:
set /p newuser=
call:rewrite !newuser! & goto:retry
)
if !newpass!==# (
echo 请输入宽带连接名称:
set /p newname=
call:rewrite !newname! & goto:retry
)
if not !newpass!==* if not !newpass!==# (
call:rewrite !newpass! & goto:retry
)
)
) ::测试结尾
rem echo 测试完成,按任意键退出。&pause>nul ::子程序 ::清屏,重显
:clshow
cls
echo 欢迎使用宽带连接工具!
if %timekey%== echo 现在时间 %date% %time%
echo 当前账号:%user%
if %netimky%== echo 本月已用宽带时长:%bnewsc%
goto:eof ::更改配置文件
:rewrite
Setlocal Enabledelayedexpansion
set index=
for /f "delims=" %%i in (netconfig.ini) do (
set /a index+=
set var!index!=%%i
)
set var%=%
set var%=%
(for /l %%i in ( !index!) do echo !var%%i!)>netconfig.ini
goto:eof ::重新创建配置文件
:remd
rem pause
echo [宽带连接名称:]>"netconfig.ini"
for %% in (
宽带连接
[用户名:] [密码:] [本月已用宽带时长] [时间显示开关] [宽带时长显示开关] [上网时间记录开关] [上次使用时间]
"%time%"
%date%
)do echo %%>>"netconfig.ini"
goto:retry
rem echo 欢迎使用宽带连接工具!
goto:eof ::检测配置是否合法,否则,重置
:extxt
set n=
Setlocal Enabledelayedexpansion
For /f "delims=" %%i in (netconfig.ini) do (
Set /a n+=
set bb!n!=%%i
rem echo bb!n!=%%i
)
for /l %%i in ( ) do (
rem if !bb%%i! neq !bbj%%i! echo "!bb%%i!""!bbj%%i!"&pause>nul
if !bb%%i! neq !bbj%%i! call:remd
)
goto:eof ::宽带计时累加(支持跨天)
:kdsclj
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)"
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)"
set/a "ctime=%bt%-%boldt%
set/a "newsc=%netsc%+%ctime%
call:rewrite %newsc%
goto:eof ::写入日志
:wrizi
if %rizhiy%== echo %date% %time% % >> 网络连接日志.txt
for %%i in (网络连接日志.txt )do if %%~zi GTR del "%%i"
goto:eof

将以上代码复制保存为x.bat即可。

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


date:2013-12-13

宽带连接工具[bat]的更多相关文章

  1. 实用AutoHotkey功能展示

    AutoHotkey是什么 AutoHotkey是一个自动化脚本语言. AutoHotkey有什么用 可以让你用热键操控一切,操作电脑就像在表演魔术 我的口号 AutoHotkey!用过都说好! Au ...

  2. bat文件的妙用1-一键开启所有开发软件

    每天早上来的第一件事情,就是打开电脑,然后开一堆的软件 1.wamp 开发环境 2.钉钉   通讯工具 3.PHPstrom 开发工具 4.nodejs.bat Nodejs的扩展(node D:/w ...

  3. 【转】宽带路由器应用(三)—ARP欺骗防护功能的使用

    在局域网中,通信前必须通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址).ARP协议对网络安全具有重要的意义.通过伪造IP地址和MAC地址实现ARP欺骗,对网络的正常传输和安全都是一个很 ...

  4. Centos7宽带连接

    网上大多教程都是虚拟机上实现宽带连接的,但是实际有差别 装完系统最头疼的就是宽带连接 转自:centos创建宽带连接-EnchanterBlue-ChinaUnix博客 http://blog.chi ...

  5. BAT“搅局”B2B市场,CIO们准备好了吗?

    "CIO必须灵活构建其所在企业的IT系统,深入业务,以应对日新月异的数字化业务环境."   BAT军团"搅局"B2B市场,CIO们准备好了吗? 庞大的企业级市场 ...

  6. Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)

    所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...

  7. 猫哥网络编程系列:详解 BAT 面试题

    从产品上线前的接口开发和调试,到上线后的 bug 定位.性能优化,网络编程知识贯穿着一个互联网产品的整个生命周期.不论你是前后端的开发岗位,还是 SQA.运维等其他技术岗位,掌握网络编程知识均是岗位的 ...

  8. BVT & BAT (版本验证测试和版本验收测试)

    BVT & BAT 版权声明:本文为博主原创文章,未经博主允许不得转载. 一.BVT: (Build Verification Test ) BVT的概念: BVT(版本验证测试)是在所有开发 ...

  9. 批处理bat 命令

    1.批处理常用符号: - echo 打开回显或关闭请求回显功能,或显示消息.如果没有任何参数,echo 命令将显示当前回显设置 语法:@echo [{ on|off }]  echo{"显示 ...

随机推荐

  1. Java学习笔记--AWT事件处理

    1.事件模型 在整个事件触发和相应的过程中,主要涉及一下3类对象 (1) 事件源 : 引起时间的GUI对象,如各类组件(Button,Label,TextField),容器组件(Frame,panel ...

  2. 利用Azure Redis Cache构建百万量级缓存读写

    Redis是一个非常流行的基于内存的,低延迟,高吞吐量的key/value数据存储,被广泛用于数据库缓存,session的管理,热数据高速访问,甚至作为数据库方式提高应用程序可扩展性,吞吐量,和实施处 ...

  3. excel筛选两列值是否相同,如果相同返回第三列值

    见图:

  4. linux虚拟机网络连接模式 bridged, host-only, NAT

    最近安装了fedora9.0,却一直不能连接到外网,我用的是3G无线网卡上网的,起初以为是linux不支持3G无线方式的,可后来装了虚拟机ubuntu却可以上网,在后来用有ADSL网络连接的电脑安装f ...

  5. 为什么1Byte=8bit

    Byte是字节的意思,而字节在早期计算机内部是用标准ASCII码来表示的根据当时情况确定至多有128种需要表示的字符(当时是IBM的标准,现在普遍是255),也就是2的7次方用二进制的0和1来表示就需 ...

  6. css 三角实例

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  7. LeetCode_String to Integer (atoi)

    Implement atoi to convert a string to an integer. int atoi (const char * str); Convert string to int ...

  8. 理解 Linux 配置文件分类和使用

    理解 Linux 配置文件分类和使用 本文说明了 Linux 系统的配置文件,在多用户.多任务环境中,配置文件控制用户权限.系统应用程序.守护进程.服务和其它管理任务.这些任务包括管理用户帐号.分配磁 ...

  9. Hdu4742-Pinball Game 3D(cdq分治+树状数组)

    Problem Description RD is a smart boy and excel in pinball game. However, playing common 2D pinball ...

  10. WEB应用知识一二三

    1.HTTP协议 |--基于请求(Request)和响应(Response)的无状态通讯协议 浏览器和WEB应用程序通过HTTP进行通信.客户端通过URL对指定服务器要求特定位置的数据 |--POST ...