代码之家  ›  专栏  ›  技术社区  ›  EMP

通过编程/从命令行“修复”网络连接

  •  9
  • EMP  · 技术社区  · 16 年前

    当您在网络连接上单击“修复”时,有人确切地知道Windows XP的功能吗?我希望通过编程或从命令行执行相同的操作。

    我在谷歌上搜索了一下,发现 this article

    12 回复  |  直到 6 年前
        1
  •  20
  •   EMP    16 年前

    谢谢,伙计们,我想我知道了。中的步骤 MS KB article posted by lpfavreau 几乎 完成这就是我尝试过的,但没有成功。然而,如果我这样做 ipconfig /release 首先,它似乎起了作用。我怀疑“修复”按钮在没有明确记录的情况下可以做到这一点。对于我的特殊情况,我还必须清除路线(“路线-f”)。因此,我最终运行的命令是:

    route -f
    ipconfig /release
    ipconfig /renew
    arp -d *
    nbtstat -R
    nbtstat -RR
    ipconfig /flushdns
    ipconfig /registerdns
    

    see last post here

        2
  •  8
  •   lpfavreau Arthur Debert    16 年前

    好像有一个 few more things

    • 地址解析协议(ARP)缓存被刷新:ARP-d
    • 重新加载NetBIOS名称缓存:nbtstat-R
    • 已发送NetBIOS名称更新:nbtstat-RR
    • 域名系统(DNS)缓存已刷新:ipconfig/flushdns

    不过有一件事,如果您的连接经常中断,您需要通过编程方式修复网络,那么这可能不是您正在寻找的解决方案。

        3
  •  5
  •   Johnny    15 年前

    有一个命令可以从命令行执行此操作。

    http://en.kioskea.net/faq/sujet-848-windows-xp-repairing-the-network-connection-using-command-line :

    可以在以下命令行中使用Netsh实用程序运行相同的命令:

    netsh int ip reset c:\network-connection.log

    使用Windows XP Service Pack 2,您可以使用:

    netsh winsock reset catalog

    重置管理TCP/IP的套接字。这可用于处理网络问题(浏览器问题、IP地址相关问题等)

        4
  •  2
  •   chaos    16 年前

        5
  •  1
  •   Harty    16 年前

    -重置网络设备MAC(可能还有PHY)。这会导致设备重新启动其所有本地数据结构,从而清除其可能遇到的任何错误情况。 -清除设备驱动程序和网络接口中的Rx/Tx数据包队列,清除任何旧的排队数据包。

        6
  •  1
  •   nyet    12 年前

    我体验到wifi连接,在我的XP设备上不时会掉下来,没有任何明显的原因,解决这一问题的唯一方法是右键单击systray上的wifi连接图标并进行修复。

    为了从命令行完成这项工作,我遵循本文中的步骤,它对我很有用: http://wlanbook.com/enable-disable-wireless-card-command-line/

        7
  •  1
  •   Zitrax dudico    10 年前

    对我有用的是:

    netsh interface show interface
    

    要显示对我来说是“Ethernet 2”的接口名称,请执行以下操作:

    netsh interface set interface "Ethernet 2" DISABLED
    netsh interface set interface "Ethernet 2" ENABLED
    
        8
  •  0
  •   Steven A. Lowe    16 年前
    ipconfig /renew
    
        9
  •  0
  •   Denver Denver    16 年前

    只需要一个api调用就可以了!

    请参见Win32 api论坛news://comp.os.ms-windows.programmer.win32 已给出代码的地方(C)

        11
  •  0
  •   user3514398    10 年前

    这对我很有效。

    在文件中键入以下行

    ipconfig/续订 nbtstat-R ipconfig/flushdns ipconfig/registerdns

    然后保存并关闭。

    在命令行。

    就这样。

    提到 http://support.microsoft.com/kb/289256 有关命令作用的说明,请参见

        12
  •  -1
  •   Stack Exchange Supports Israel    10 年前

    <?xml version="1.0" encoding="UTF-16"?>
    <Task version="1.4" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
      <RegistrationInfo>
        <Date>2015-01-15T10:19:28.1634612</Date>
        <Author>MACHINE\user</Author>
      </RegistrationInfo>
      <Triggers>
        <EventTrigger>
          <Enabled>true</Enabled>
          <Subscription>&lt;QueryList&gt;&lt;Query Id="0" Path="System"&gt;&lt;Select Path="System"&gt;*[System[Provider[@Name='Microsoft-Windows-Power-Troubleshooter'] and EventID=1]]&lt;/Select&gt;&lt;/Query&gt;&lt;/QueryList&gt;</Subscription>
          <Delay>PT5S</Delay>
        </EventTrigger>
      </Triggers>
      <Principals>
        <Principal id="Author">
          <UserId>S-1-5-18</UserId>
          <RunLevel>HighestAvailable</RunLevel>
        </Principal>
      </Principals>
      <Settings>
        <MultipleInstancesPolicy>IgnoreNew</MultipleInstancesPolicy>
        <DisallowStartIfOnBatteries>false</DisallowStartIfOnBatteries>
        <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
        <AllowHardTerminate>true</AllowHardTerminate>
        <StartWhenAvailable>true</StartWhenAvailable>
        <RunOnlyIfNetworkAvailable>false</RunOnlyIfNetworkAvailable>
        <IdleSettings>
          <StopOnIdleEnd>true</StopOnIdleEnd>
          <RestartOnIdle>false</RestartOnIdle>
        </IdleSettings>
        <AllowStartOnDemand>true</AllowStartOnDemand>
        <Enabled>true</Enabled>
        <Hidden>true</Hidden>
        <RunOnlyIfIdle>false</RunOnlyIfIdle>
        <DisallowStartOnRemoteAppSession>false</DisallowStartOnRemoteAppSession>
        <UseUnifiedSchedulingEngine>false</UseUnifiedSchedulingEngine>
        <WakeToRun>false</WakeToRun>
        <ExecutionTimeLimit>P3D</ExecutionTimeLimit>
        <Priority>7</Priority>
      </Settings>
      <Actions Context="Author">
        <Exec>
          <Command>C:\Windows\System32\netsh.exe</Command>
          <Arguments>interface set interface "Ethernet" DISABLED</Arguments>
        </Exec>
        <Exec>
          <Command>C:\Windows\System32\netsh.exe</Command>
          <Arguments>interface set interface "Ethernet" ENABLED</Arguments>
        </Exec>
      </Actions>
    </Task>