我是一个网吧的网管,用的是XP系统,在XP下更改IP和计算机名太慢了,我想能不能用VB写一个小工具实现又能改计算机名又能更改IP和域名和网关这些的?

解决方案 »

  1.   

    可以的
    不过我不会,好像要用到API函数
      

  2.   

    Function ChangeIP(IP As String, NM As String, GW As String) As String
    'If MsgBox("no to exit", vbYesNo) = vbNo Then End
    Dim strComputer, objWMIService, colNetAdapters, strIPAddress, strSubnetMask
    Dim strGateway, strGatewaymetric, objNetAdapter, errEnable, errGateways
    strComputer = "."
    Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colNetAdapters = objWMIService.ExecQuery("Select * from Win32_NetworkAdapterConfiguration where IPEnabled=TRUE")
    strIPAddress = Array(IP) 'ipµØÖ·
    strSubnetMask = Array(NM) '×ÓÍøÑÚÂë
    strGateway = Array(GW) 'Íø¹Ø
    strGatewaymetric = Array(1)
     
    For Each objNetAdapter In colNetAdapters
    errEnable = objNetAdapter.EnableStatic(strIPAddress, strSubnetMask)
        errGateways = objNetAdapter.SetGateways(strGateway, strGatewaymetric)
        If errEnable = 0 Then
            ChangeIP = "OK"
        Else
            ChangeIP = "FIN"
        End If
    NextEnd Function
    Private Sub Command1_Click()
    If ChangeIP("192.168.1.12", "255.255.255.0", "192.168.1.1") = "OK" Then
        MsgBox "ok"
    Else
        MsgBox "no"
    End If
    End Sub
      

  3.   

    UP,还没有找到答案呀,我想又能在98下用又能在win2K下用的修改IP的工具?难道只有VC才能写出来呀,VB就写不出了吗?
      

  4.   

    98 下面装个wmi 就可以运行上面的东西了
      

  5.   

    wmi是什么东西呀,我没有听说过?
      

  6.   

    听说能用DhcpNotifyConfigChange改呀,但我不知道怎么用,在VC里面有申明,但VB里我没有看倒过?
      

  7.   

    用WORD生成一个宏,写成注册表文件就可以实现了,只要把该生成的文本在目标的机器上运行一下就可以实现了。我在学校的机器上就是这么快速改写IP的,很方便。不用写任何的程序,很简单。