zzm0163 发表于 2010-6-16 17:36:05

根据填写的IP改计算机名

本帖最后由 zzm0163 于 2010-6-18 13:17 编辑

那位老大给提供个根据填写的IP自动修改计算机名的代码。

例如 本机IP为12号,当我填写完12后,计算机名称不用我填,自动变为pc012。我在网上找了很长时间都是填完IP后,还得手动填写计算机名称。哪位兄弟有类似的工具或代码请告诉我下。谢谢。小弟不胜感激。

masterpcc 发表于 2010-6-16 17:57:07

新手!!期待中!

ferelove 发表于 2010-6-16 19:27:23

来一段吧,正准备自己用的Dim $sIP = @IPAddress1 ;取系统当前第1块网卡的IP地址
Dim $sIP_4 = StringSplit($sIP, ".") ;取IP地址中的各节
For $i = 1 To 4 ;将IP各节中不足3位的用0补足3位
        Select
                Case $sIP_4[$i] >= 0 And $sIP_4[$i] < 10
                        $sIP_4[$i] = "00" & $sIP_4[$i]
                Case $sIP_4[$i] > 10 And $sIP_4[$i] < 100
                        $sIP_4[$i] = "0" & $sIP_4[$i]
        EndSelect
Next
;Dim $NewName = "PC" & $sIP_4 & $sIP_4 & $sIP_4 & $sIP_4 ;取IP全部+PC为新名
;Dim $NewName = "PC" & $sIP_4 & $sIP_4 & $sIP_4 ;取IP后3节+PC为新名
Dim $NewName = "PC" & $sIP_4 & $sIP_4 ;取IP后2节+PC为新名
;Dim $NewName = "PC" & $sIP_4 ;取IP最后节+PC为新名
;以上4行只选用其中1行即可。建议使用后2节

;更改机器名
RegWrite("HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters", "NV Hostname", $NewName)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters", "Hostname", $NewName)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ActiveComputerName", "ComputerName", $NewName)
RegWrite("HKLM\SYSTEM\CurrentControlSet\Control\ComputerName\ComputerName", "ComputerName", $NewName)
MsgBox(0, "提示", "新名是:" & $NewName & @LF & "建议重启电脑生效!")

masterpcc 发表于 2010-6-16 20:57:33

新手!!学习了

rikthhpgf2005 发表于 2010-6-17 08:20:06

读了ip改reg

chenronting 发表于 2010-6-17 08:55:50

不错。 学习了。{:face (239):}

Joo 发表于 2010-6-17 09:28:18

mark 学习·······

zzm0163 发表于 2010-6-18 13:05:30

虽然3楼的代码不是我需要的,但在论坛中还是让我找到了。多谢各位兄弟帮忙。

afan 发表于 2010-6-18 13:17:13

LZ 的意思仅仅只是自动补全?StringFormat() 即可

zzm0163 发表于 2010-6-18 13:18:37

怎么编辑不到已解决的问题区啊
页: [1]
查看完整版本: 根据填写的IP改计算机名