• 【中国梦·大国工匠篇】鸡蛋上钻孔显真功 潜心坚守一线练就绝活儿 2019-06-11
  • 【理上网来·喜迎十九大】塞尔维亚驻华大使:中国的发展是其他国家望尘莫及的 2019-06-10
  • 六大工程培育发展新动能 2019-06-10
  • 为推动上合组织发展提供中国智慧、中国方案 2019-05-29
  • 覆盖31亿人口!一图告诉你上合组织有多牛 2019-05-28
  • 德味手表了解一下 徕卡推出L1,L2机械表德味手表徕卡推出L1-手机行情 2019-05-28
  • 西部网(陕西新闻网)www.cnwest.com 2019-05-27
  • 穿越千年 感悟周公 2019-05-27
  • 2017年度一级建造师考试成绩已发布 2019-05-27
  • 【大考2018】2018高考首日众生相(组图) 2019-05-27
  • 浙江舟山定海区一国企非党管理人员涉嫌受贿被查 2019-05-23
  • 让山里娃感受智慧科技乐趣 2019-05-19
  • 香港田径锦标赛飞人夺冠 2019-05-19
  • 诽谤侮辱英烈可追刑责 2019-05-14
  • 图解:十二字“洞见”2017年保险业 2019-04-28
  • 批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
    [批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
    返回列表 发帖

    粤广东11选五历史开奖:[网络连接] [已解决]xp系统下如果拔掉网线,开机启动批处理,会导致一直循环重启。如何修改?

    本帖最后由 ygqiang 于 2019-3-16 22:23 编辑

    xp系统下如果拔掉网线,开机启动批处理,会导致一直循环重启。如何修改?

    现在的批处理代码功能是:每次xp系统开启就运行1次,获取c:\user-ip.txt文件里面的参数信息。同时获取本地计算机的计算机名与ip地址。
    对比如果一致,就直接退出。如果不一致,就以txt文件里面的参数修改本地计算机。

    遇到问题:如果把网线拔下来,开机进入xp系统,代码运行以后会自动重启,这样一直循环重启。
    修改要求:拔掉网线情况下,进入xp系统运行批处理代码,如果检测出来拔掉网线的情况,就直接循环3分钟监测,一直持续到插上网线,才继续对比参数进行后续操作。
     广东十一选五计划软件 www.qe-ar.com 
    1. @echo off
    2. setlocal enabledelayedexpansion
    3. ———————————————————————————————————————————————————————————————
    4. cls
    5. if not exist c:\user-ip.txt (echo txterror & 1pause & exit)
    6. echo nextok
    7. 1pause
    8. cls
    9. for /f "delims=" %%i in (c:\user-ip.txt) do (
    10. set /a j+=1
    11. if !j!==1 set nana=%%i
    12. if !j!==2 set ipip=%%i
    13. )
    14. ———————————————————————————————————————————————————————————————
    15. cls
    16. echo %nana%------
    17. echo %ipip%------
    18. 1pause
    19. cls
    20. set Mask=255.255.255.128
    21. set Gway=192.168.8.1
    22. :status
    23. cls
    24. @ECHO OFF&Setlocal EnableDelayedExpansion
    25. set _Name=计算机名----&set _Domain=工作组------&set _IPAddress=IP地址------
    26. set _IPSubnet=子网掩码----&set _DefaultIPGateway=网关--------&set _DNSServerSearchOrder=DNS---------
    27. FOR /F "tokens=*" %%A IN ('WMIC Path Win32_ComputerSystem Get Domain^,Name /Value 2^>Nul') DO (
    28.     FOR /F "tokens=*" %%i in ("%%A") do set %%i
    29. )
    30. echo %Name%------
    31. echo %IPAddress%------
    32. 1pause
    33. cls
    34. FOR /F "tokens=*" %%A IN ('WMIC NICConfig WHERE "IPEnabled=TRUE" GET DefaultIPGateway^,Description^,DNSServerSearchOrder^,IPAddress^,IPSubnet /value 2^>Nul') DO (
    35.    FOR /F "tokens=*" %%i in ("%%A") do set %%i
    36. )
    37. echo %Name%------
    38. echo %IPAddress%------
    39. 1pause
    40. cls
    41. for %%i in (Name IPAddress IPSubnet DefaultIPGateway) do (
    42.     set %%i=!%%i:{=!
    43.     set %%i=!%%i:}=!
    44.     set %%i=!%%i:"=!
    45.     echo !_%%i!: !%%i:,=  !  
    46. 1pause
    47.     cls
    48. )
    49. echo %Name%=========
    50. echo %IPAddress%=========
    51. 1pause
    52. cls
    53. if "%name%"=="%nana%" (
    54. if "%IPAddress%"=="%ipip%" goto :cbsnext
    55. )
    56. echo nene
    57. 1pause
    58. cls
    59. cls
    60. echo 计算机名:%nana%
    61. echo ip地址:%ipip%
    62. echo 正在修改中...
    63. 1pause
    64. cls
    65. ping 127.0.0.1 -n 2 >nul 2>nul
    66. ———————————————————————
    67. cls
    68. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t reg_sz /d %nana% /f >nul 2>nul
    69. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t reg_sz /d %nana% /f >nul 2>nul
    70. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %nana% /f >nul 2>nul
    71. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "Hostname" /t reg_sz /d %nana% /f >nul 2>nul
    72. reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t REG_SZ /d "%nana%" /f
    73. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d "%nana%" /f
    74. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "Hostname" /t REG_SZ /d "%nana%" /f
    75. reg add "HKLM\SYSTEM\ControlSet002\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%nana%" /f
    76. ———————————————————————
    77. cls
    78. ::用ipconfig /all命令获取网卡名称。
    79. cls
    80. FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "Ethernet adapter "') DO set macname=%%j
    81. ::用for命令删除网卡名称后面的冒号。
    82. cls
    83. FOR /F "tokens=1* delims=:" %%i in ("%macname%") do set a=%%i
    84. echo 网卡连接名:%a%
    85. cls
    86. 1pause
    87. cls
    88. netsh interface ip set address name="%a%" source=static addr=%ipip% mask=%Mask% gateway=%Gway% gwmetric=1 >nul 2>nul
    89. cls
    90. 1pause
    91. cls
    92. shutdown -r -t 2
    93. :cbsnext
    94. ———————————————————————
    95. echo user-ip文件夹中的与本地机器获取到的一致
    96. echo okok
    97. 1pause
    98. cls
    99. exit
    复制代码
    1

    评分人数

      • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2

    已经解决,测试通过。
    1. @echo off
    2. :star
    3. setlocal enabledelayedexpansion
    4. ———————————————————————————————————————————————————————————————
    5. cls
    6. if not exist c:\user-ip.txt (echo txterror & 1pause & exit)
    7. echo nextok
    8. 1pause
    9. cls
    10. for /f "delims=" %%i in (c:\user-ip.txt) do (
    11. set /a j+=1
    12. if !j!==1 set nana=%%i
    13. if !j!==2 set ipip=%%i
    14. )
    15. ———————————————————————————————————————————————————————————————
    16. cls
    17. echo %nana%------
    18. echo %ipip%------
    19. 1pause
    20. cls
    21. set Mask=255.255.255.128
    22. set Gway=192.168.8.1
    23. :status
    24. cls
    25. @ECHO OFF&Setlocal EnableDelayedExpansion
    26. set _Name=计算机名----&set _Domain=工作组------&set _IPAddress=IP地址------
    27. set _IPSubnet=子网掩码----&set _DefaultIPGateway=网关--------&set _DNSServerSearchOrder=DNS---------
    28. FOR /F "tokens=*" %%A IN ('WMIC Path Win32_ComputerSystem Get Domain^,Name /Value 2^>Nul') DO (
    29.     FOR /F "tokens=*" %%i in ("%%A") do set %%i
    30. )
    31. echo %Name%------
    32. echo %IPAddress%------
    33. 1pause
    34. cls
    35. FOR /F "tokens=*" %%A IN ('WMIC NICConfig WHERE "IPEnabled=TRUE" GET DefaultIPGateway^,Description^,DNSServerSearchOrder^,IPAddress^,IPSubnet /value 2^>Nul') DO (
    36.    FOR /F "tokens=*" %%i in ("%%A") do set %%i
    37. )
    38. echo %Name%------
    39. echo %IPAddress%------
    40. 1pause
    41. cls
    42. for %%i in (Name IPAddress IPSubnet DefaultIPGateway) do (
    43.     set %%i=!%%i:{=!
    44.     set %%i=!%%i:}=!
    45.     set %%i=!%%i:"=!
    46.     echo !_%%i!: !%%i:,=  !  
    47. 1pause
    48.     cls
    49. )
    50. echo %Name%=========
    51. echo %IPAddress%=========
    52. 1pause
    53. cls
    54. if "%name%"=="%nana%" (
    55. if "%IPAddress%"=="0.0.0.0" goto :cbsnetn
    56. if "%IPAddress%"=="%ipip%" goto :cbsnext
    57. )
    58. echo nene
    59. 1pause
    60. cls
    61. cls
    62. echo 计算机名:%nana%
    63. echo ip地址:%ipip%
    64. echo 正在修改中...
    65. 1pause
    66. cls
    67. ping 127.0.0.1 -n 2 >nul 2>nul
    68. ———————————————————————
    69. cls
    70. reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName" /v "ComputerName" /t reg_sz /d %nana% /f >nul 2>nul
    71. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t reg_sz /d %nana% /f >nul 2>nul
    72. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "NV Hostname" /t reg_sz /d %nana% /f >nul 2>nul
    73. reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Tcpip\Parameters" /v "Hostname" /t reg_sz /d %nana% /f >nul 2>nul
    74. reg add "HKLM\SYSTEM\ControlSet001\Control\ComputerName\ActiveComputerName" /v "ComputerName" /t REG_SZ /d "%nana%" /f
    75. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "NV Hostname" /t REG_SZ /d "%nana%" /f
    76. reg add "HKLM\SYSTEM\ControlSet001\Services\Tcpip\Parameters" /v "Hostname" /t REG_SZ /d "%nana%" /f
    77. reg add "HKLM\SYSTEM\ControlSet002\Control\ComputerName\ComputerName" /v "ComputerName" /t REG_SZ /d "%nana%" /f
    78. ———————————————————————
    79. cls
    80. ::用ipconfig /all命令获取网卡名称。
    81. cls
    82. FOR /F "tokens=2*" %%i IN ('ipconfig/all^|find /i "Ethernet adapter "') DO set macname=%%j
    83. ::用for命令删除网卡名称后面的冒号。
    84. cls
    85. FOR /F "tokens=1* delims=:" %%i in ("%macname%") do set a=%%i
    86. echo 网卡连接名:%a%
    87. cls
    88. 1pause
    89. cls
    90. netsh interface ip set address name="%a%" source=static addr=%ipip% mask=%Mask% gateway=%Gway% gwmetric=1 >nul 2>nul
    91. cls
    92. 1pause
    93. cls
    94. shutdown -r -t 2
    95. :cbsnetn
    96. echo neterror
    97. 1pause
    98. cls
    99. ping 127.0.0.1 -n 120 >nul 2>nul
    100. goto :star
    101. :cbsnext
    102. echo okok
    103. 1pause
    104. cls
    105. exit
    复制代码

    TOP

    回复 2# ygqiang

    谢谢您的无私分享!
    可否把您的这个“c:\user-ip.txt”文件内容格式分享出来?我也想使用您这个功能。
    先谢谢了??!
       

    TOP

    回复 3# locoman


        txt内容举例如下:
    mypc
    10.16.8.2

    TOP

    返回列表
  • 【中国梦·大国工匠篇】鸡蛋上钻孔显真功 潜心坚守一线练就绝活儿 2019-06-11
  • 【理上网来·喜迎十九大】塞尔维亚驻华大使:中国的发展是其他国家望尘莫及的 2019-06-10
  • 六大工程培育发展新动能 2019-06-10
  • 为推动上合组织发展提供中国智慧、中国方案 2019-05-29
  • 覆盖31亿人口!一图告诉你上合组织有多牛 2019-05-28
  • 德味手表了解一下 徕卡推出L1,L2机械表德味手表徕卡推出L1-手机行情 2019-05-28
  • 西部网(陕西新闻网)www.cnwest.com 2019-05-27
  • 穿越千年 感悟周公 2019-05-27
  • 2017年度一级建造师考试成绩已发布 2019-05-27
  • 【大考2018】2018高考首日众生相(组图) 2019-05-27
  • 浙江舟山定海区一国企非党管理人员涉嫌受贿被查 2019-05-23
  • 让山里娃感受智慧科技乐趣 2019-05-19
  • 香港田径锦标赛飞人夺冠 2019-05-19
  • 诽谤侮辱英烈可追刑责 2019-05-14
  • 图解:十二字“洞见”2017年保险业 2019-04-28