[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[网络连接] [分享]热点助手0.7(预览版)--虚拟无线热点管理批处理

热点助手是用于管理虚拟无线热点(承载网络)的批处理程序,可以在安装了无线网卡的Windows 7或Windows 8操作系统上运行,帮助用户创建和管理虚拟无线热点。通过使用虚拟无线热点,可以将多个无线网络客户端(笔记本、智能手机等)连接到一起,组建小型的无线局域网。还可以通过共享计算机上的宽带连接,将多个设备接入互联网。欢迎各位提出建议!

使用指南:
主界面:
[attach]5973[/attach]

第一次使用,请先检测驱动程序是否支持热点,输入8然后按回车确认,程序将进行检测并报告结果:
[attach]5974[/attach]

如果检测结果不支持,那么请尝试更新驱动程序,或是系统补丁。如果显示支持,就可以开始设置无线热点了,可以使用自动设置功能进行热点的设置,也可以使用功能5、6来分别设置您喜欢的SSID和密码。
[attach]5975[/attach]

SSID和密码设置好后,就要进行网络共享的设置了,否则连接热点的设备是不能上网的。打开网络连接,然后找到创建出的热点(在Win7下通常是"无线网络连接 2或3",win8下通常是“本地连接* 11”),接着将能上网的连接(宽带连接或本地连接,视实际情况而定)共享给热点。共享的方法是右键点击要共享的连接,然后在共享中勾选“允许其他网络用户通过此计算机的Internet连接”,接着在下拉列表中选择无线网络连接 3,然后点击确定,这样网络共享就设置好了。
[attach]5977[/attach]

共享设置好后,热点(softAP是热点的SSID)就能上网了:
[attach]5978[/attach]

可以使用“显示客户端IP和物理地址”功能来了解有哪些设备连接了无线热点:
[attach]5979[/attach]

程序还提供一些预定功能,比如定时关机等,方便用户对热点进行管理:
[attach]5980[/attach]
[attach]5981[/attach]

代码:
  1. @echo off & color 1F & title 热点助手0.7(预览版) --虚拟无线热点管理程序,适用于win7/win8
  2. (rem 程序名称 :热点助手
  3. rem 版本 :0.7 (预览版)
  4. rem 完成时间 :2012年12月9日 20:52:19
  5. rem 宏命令
  6.   set "RESTARTAP=netsh wlan set hostednetwork mode=allow &netsh wlan start hostednetwork 1>nul 2>nul &ping 127.0.0.1 1>nul 2>nul &netsh wlan stop hostednetwork 1>nul 2>nul &netsh wlan start hostednetwork" &rem 重启热点
  7. setlocal EnableExtensions &rem 启用命令处理器扩展
  8. setlocal EnableDelayedExpansion &rem 启用延缓环境变量
  9. )
  10. rem 检查程序是否以管理员身份运行
  11. bcdedit /enum active 1>nul 2>nul
  12. if not "!errorlevel!"=="0" (
  13.   color E0  &rem 设置警告背景及字体颜色,背景-淡黄 字体-黑色
  14.   echo 警告:检测到您可能没有以管理员身份运行本程序,这将使得部分功能失效。
  15.   echo 提示:以管理员身份运行程序的方法:右键点击程序,然后选择“以管理员身份运行”。
  16.   set /p mainmenu=您想要继续运行程序吗?[Yes/No]^:
  17.   if /i not "!mainmenu!"=="Yes" (goto End)
  18. )
  19. :Begin
  20. cls
  21. echo 提示:输入要进行的操作后的编号或字母,然后按回车键确认。
  22. echo;
  23. echo 自动设置并启动无线热点………………1 预定管理…………………………2
  24. echo;
  25. echo 开启无线热点……………………………3 关闭无线热点……………………4
  26. echo;
  27. echo 设置SSID…………………………………5 设置密码…………………………6
  28. echo;
  29. echo 显示客户端IP和物理地址………………7 检测驱动是否支持无线热点……8
  30. echo;
  31. echo 查看网络相关信息………………………9 打开帮助页面……………………h
  32. echo;
  33. echo 退出程序…………………………………0
  34. echo;
  35. set /p mainmenu=请选择:
  36. cls
  37. if "%mainmenu%"=="1" (
  38.   echo 正在自动设置,这可能需要大约15秒的时间,请稍等……
  39.   set "password=deepblue%random%"
  40.   netsh wlan set hostednetwork ssid=softAP key=!password!
  41.   %RESTARTAP%
  42.   if "!errorlevel!"=="0" (
  43.     echo 无线热点的SSID为:softAP
  44.     echo 无线热点的密码为:!password!
  45.     echo;
  46.     echo 提示:如果忘记密码,请使用功能6重置密码。
  47.   )
  48. )
  49. if "%mainmenu%"=="2" (
  50.   echo 定时关闭计算机…………………1
  51.   echo 取消定时关闭计算机……………2
  52.   echo;
  53.   echo 定时关闭无线热点………………3
  54.   echo 取消定时关闭无线热点…………4
  55.   echo;
  56.   echo 开机时启动无线热点……………5
  57.   echo 取消开机启动无线热点…………6
  58.   echo;
  59.   echo 退出回到主菜单…………………0
  60.   echo;
  61.   set /p submenu= 请选择^:
  62.   cls
  63.   if "!submenu!"=="1" (
  64.     echo 您想要在多少分钟后关闭计算机?
  65.     set /p shutdowntime=请输入:
  66.     echo;
  67.     set /a shutdowntime*=60 &rem 换算成分钟
  68.     if not "!shutdowntime!"=="0" (
  69.       shutdown -s -t !shutdowntime!
  70.       set /a shutdowntime/=60
  71.       if "!errorlevel!"=="0" echo 命令执行成功,计算机将在 !shutdowntime! 分钟后被关闭。
  72.     ) else echo 无效的输入,有效值是大于0的整数
  73.   )
  74.   if "!submenu!"=="2" (
  75.     echo 正在取消定时关闭计算机
  76.     shutdown -a && echo 已成功取消定时关闭计算机。
  77.   )
  78.   if "!submenu!"=="3" (
  79.     echo 您想在几点关闭无线热点?(0~23)
  80.     set /p shutdowntime= 请输入:
  81.     if !shutdowntime! leq 9 set "shutdowntime=0!shutdowntime: =!" &rem 补齐两位并去掉空格,否则schtasks命令会报错
  82.     set "shutdowntime=!shutdowntime!:00"
  83.     echo;
  84.     schtasks /create /sc daily /tn 定时关闭无线热点 /tr "cmd /q /c netsh wlan stop hostednetwork &schtasks /delete /tn 定时关闭无线热点 /f" /st !shutdowntime! /ru system /rl highest /f
  85.     if "!errorlevel!"=="0" echo 命令执行成功,无线热点将在 !shutdowntime! 关闭。
  86.   )
  87.   if "!submenu!"=="4" (
  88.     echo 正在取消定时关闭无线热点
  89.     schtasks /delete /tn 定时关闭无线热点 /f
  90.   )
  91.   if "!submenu!"=="5" (
  92.     echo 正创建开机时启动无线热点的任务
  93.     schtasks /create /tn 开机时启动无线热点 /tr "cmd /q /c %RESTARTAP%" /sc onlogon  /ru system /rl highest /f
  94.   )
  95.   if "!submenu!"=="6" (
  96.     echo 正在取消开机时启动无线热点
  97.     schtasks /delete /tn 开机时启动无线热点 /f
  98.   )
  99. )
  100. if "!mainmenu!"=="3" (
  101.   echo 正在开启无线热点,这可能需要大约10秒的时间,请稍等……
  102.   rem 经测试,开机后第一次启动热点时,连接可能出现问题,故等待一段时间后重启,以解决此问题
  103.   %RESTARTAP%
  104. )
  105. if "%mainmenu%"=="4" (
  106.   echo 正关闭无线热点,这可能需要大约5秒的时间,请稍等……
  107.   netsh wlan stop hostednetwork &rem 关闭无线热点
  108.   netsh wlan set hostednetwork mode=disallow &rem 禁用无线热点模式
  109. )
  110. if "%mainmenu%"=="5" (
  111.   echo 提示:直接回车将设置为默认值 &echo;
  112.   set "oldssid="
  113.   set "newssid="
  114.   for /f "skip=4 tokens=1* delims=:" %%i in ('netsh wlan show hostednetwork') do if "!oldssid!"=="" set "oldssid=%%j"
  115.   echo 原SSID:!oldssid!
  116.   set /p newssid=请输入新SSID:
  117.   if "!newssid!"=="" set "newssid=softAP"
  118.   netsh wlan set hostednetwork ssid=!newssid!
  119. )
  120. if "%mainmenu%"=="6" (
  121.   echo 提示:密码至少为8位 &echo;
  122.   set /p password=请输入新密码:
  123.   netsh wlan set hostednetwork key=!password! 1>nul
  124.   if "!errorlevel!"=="0" (echo 已成功更改密码) else echo 输入的密码有误
  125. )
  126. if "%mainmenu%"=="7" (
  127.   rem 将热点信息保存到数组变量中
  128.   set "n=0"
  129.   for /f "skip=3 tokens=1* delims=:" %%i in ('netsh wlan show hostednetwork') do (
  130.     set /a n+=1
  131.     if !n! gtr 12 ( rem 12行之后为客户端信息
  132.       set "apinfo[!n!]=%%i:%%j" &rem 客户端物理地址采用:分隔,故需要保存i
  133.     ) else set "apinfo[!n!]=%%j"
  134.   )
  135.   echo 无线热点信息:
  136.   if /i "!apinfo[1]!"=="" (echo   无线热点模式:不可用) else echo   无线热点模式:!apinfo[1]!
  137.   if /i "!apinfo[8]!"=="" (echo   无线热点状态:不可用) else echo   无线热点状态:!apinfo[8]!
  138.   if "!apinfo[1]!"==" 已启用" set "ismode=true" &set "apssid=!apinfo[2]!"
  139.   if "!apinfo[8]!"==" 已启动" set "isstart=true"
  140.   if /i "!isstart!"=="true" (
  141.     set "apmac=!apinfo[9]!" &set "apmac=!apmac::=-!" &rem 获取热点物理地址,并将:转换为-
  142.     for /f "tokens=1* delims=:" %%i in ('ipconfig /all') do (
  143.       if /i "%%j"==" !apmac!" set "isap=true" &rem 已进入ap信息
  144.       if /i "!isap!"=="true" (
  145.         set "s=%%i"
  146.         if /i "!s:~0,7!"=="   IPv4" (
  147.           set "apip=%%j"
  148.           set "isap=false" &rem 已离开ap信息
  149.         )
  150.       )
  151.     )
  152.     for /f "delims=(" %%i in ("!apip!") do set "apip=%%i" &rem 分离出ip地址
  153.     echo   无线热点的SSID:!apssid!
  154.     echo   无线热点的IP地址:!apip!
  155.     echo   无线热点的物理地址:!apmac!
  156.     echo - - - - - - &echo;
  157.     echo 连接到无线热点上的客户端信息:
  158.     set "sumclient=!apinfo[12]!"
  159.     if !sumclient! gtr 0 (
  160.       echo   客户端总数:!sumclient!
  161.       echo   序号 类型 验证状态 物理地址            IP地址
  162.       for /l %%i in (13,1,!n!) do (
  163.         for /f "tokens=1,2 delims= " %%j in ("!apinfo[%%i]!") do (
  164.           set "clientmac=%%j" &set "clientmac=!clientmac::=-!"
  165.           set "clientstate=%%k"
  166.         )
  167.         for /f "tokens=1,3 delims= " %%i in ('arp -a -n !apip! ^| find /i "!clientmac!"') do (
  168.           set "clientip=%%i"
  169.           set "ipclass=%%j"
  170.         )
  171.         set /a s+=1
  172.         echo   !s! !ipclass! !clientstate! !clientmac!   !clientip!
  173.       )
  174.     ) else echo   当前没有客户端连接到无线热点上
  175.   )  else echo   未启动无线热点,SSID、IP及物理地址不可用 &echo   未启动无线热点,客户端信息不可用
  176.   echo - - - - - -
  177. )
  178. if "%mainmenu%"=="8" (
  179.   set "apmode=不支持"
  180.   echo 驱动程序信息:
  181.   for /f "delims=" %%i in ('netsh wlan show drivers') do (
  182.     echo %%i
  183.     if /i "%%i"=="    支持的承载网络  : 是" set "apmode=支持"
  184.   )
  185.   echo; &echo - - - - - -
  186.   echo 检测结果: !apmode!
  187.   echo     您当前的驱动程序!apmode!无线热点模式
  188. )
  189. if "%mainmenu%"=="9" (
  190.   echo 提示:若相关信息过长,将在每显示一页后暂停,按空格键可继续查看下一页的信息。&echo;
  191.   echo 查看承载网络的属性和状态(netsh wlan show hostednetwork) …………1&echo;
  192.   echo 查看系统上的无线局域网接口的列表(netsh wlan show interfaces)……2&echo;
  193.   echo 查看系统上的无线驱动程序属性(netsh wlan show drivers) ……………3&echo;
  194.   echo 查看计算机上可见的无线网络列表(netsh wlan show networks)…………4&echo;
  195.   echo 查看无线局域网的全局设置(netsh wlan show settings)…………………5&echo;
  196.   echo 查看完整的无线设备和网络信息(netsh wlan show all) …………………6&echo;
  197.   echo 查看Windows上的完整IP配置(ipconfig /all)………………………………7&echo;
  198.   echo 退出回到主菜单………………0&echo;
  199.   set /p submenu= 请选择:
  200.   cls
  201.   if "!submenu!"=="1" netsh wlan show hostednetwork | more
  202.   if "!submenu!"=="2" netsh wlan show interfaces | more
  203.   if "!submenu!"=="3" netsh wlan show drivers | more
  204.   if "!submenu!"=="4" netsh wlan show networks | more
  205.   if "!submenu!"=="5" netsh wlan show settings | more
  206.   if "!submenu!"=="6" netsh wlan show all | more
  207.   if "!submenu!"=="7" ipconfig /all | more
  208. )
  209. if /i "%mainmenu%"=="h" (
  210.   start http://hi.baidu.com/_deepbluetears/archive/tag/热点助手
  211.   echo 如果页面没有正常打开,请访问:
  212.   echo http://hi.baidu.com/_deepbluetears/archive/tag/热点助手
  213. )
  214. if not "%mainmenu%"=="0" (
  215.   if not "!submenu!"=="0" ( rem 子菜单选项不为0,则进行暂停
  216.     echo; &echo ------ 按空格键返回主菜单 ------
  217.     pause >nul
  218.   )
  219.   set "submenu="
  220.   goto Begin
  221. )
  222. :End
  223. color 07
复制代码
2

评分人数

    • cjiabing: 紧跟时代步伐,有创意,哪个试过了出来说说 ...PB + 6 技术 + 1
    • Batcher: 感谢分享PB + 10 技术 + 1

这个不错~
谢谢了~

TOP

返回列表