本帖最后由 beck1321 于 2013-1-8 16:15 编辑
具体报酬:50元软妹币
支付方式:支付宝
联系方式:QQ511156969
有效期限:2013年2月之前。
需求描述:如下- @echo off
- echo 正在为您设置IP,请稍等......
- set /A "a=%RANDOM%%%250+3
- set /A "b=%RANDOM%%%250+3
- set /A "c=%RANDOM%%%250+3
- netsh interface ip set address name="本地连接" source=static addr=10.%a%.%b%.%c% mask=255.0.0.0 >nul
- :start
- set /A "num=%RANDOM%%%190+10"
- ping 10.1.1.%num% -n 1 >nul
- arp -a |find "10.1.1.%num%" &&goto start
- netsh interface ip set address name="本地连接" source=static addr=10.1.1.%num% mask=255.255.255.0 gateway=10.1.1.250 gwmetric=0 | find "IP地址已在网络上使用" &&goto start
- netsh interface ip set dns "本地连接" source=static addr=10.1.1.100 register=primary >nul
- netsh interface ip add dns "本地连接" addr=8.8.8.8 >nul
- netsh interface ip set wins name="本地连接" source=static addr=10.1.1.100 >nul
- if %errorlevel% neq 0 goto start
复制代码 这段代码 其中- set /A "num=%RANDOM%%%190+10"
- ping 10.1.1.%num% -n 1 >nul
- arp -a |find "10.1.1.%num%" &&goto start
复制代码 这一段至关重要,是为了arp-a 得到 这个随机的num 的ip是否已有mac 即是否已在使用 如果有 则 继续 goto start
如果没有 则 继续下面的 ip配置工作
问题:
xp运行 这个代码 是没问题的,经过测试,能够发现已有ip 而重新start
但win7不行 ,我把>nul去掉 看状态 ping了以后 直接就配置下面的操作了。 给人感觉都没有执行arp -a find这条命令 ,我在win7单独运行arp -a 这一行 ,是有显示的。但不知为何 整个代码运行时就不出现了。
(支付方式仅限支付宝)
==============
问题已解决,款已付。
感谢"无名"英雄 我猜你是论坛的高层哦! |