0
我正在寻找一种方式来有这个.vbs文件,添加一个连接特定的DNS后缀的以太网适配器的代码构成的过去LAN.vbs的脚本来改变连接特定的DNS后缀
的响亮的名字一个小的shell脚本:
- 更改主DNS后缀
- 刷新该DNS
- 检查IP信息,以确保一切都举行
- 更改启动ŧ YPE或服务
- 开始说服务
- 的Ping一个已知的服务器,以确保网络连通
似乎无法找到任何代码,这就是可行做出的第一步工作。目前我有:
'add dns
Const HKEY_LOCAL_MACHINE = &H80000002
strComputer = "."
Set oReg=GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & _
strComputer & "\root\default:StdRegProv")
strKeyPath = "SOFTWARE\Policies\Microsoft\Windows NT\DNSClient"
oReg.CreateKey HKEY_LOCAL_MACHINE,strKeyPath
strValueName = "AppendToMultiLabelName"
'Enabled
strValue = "mysuffix.com"
oReg.SetStringValue HKEY_LOCAL_MACHINE,strKeyPath,strValueName,strValue
'flush dns
set shell = createobject("wscript.shell")
shell.run("ipconfig /flushdns")
Wscript.echo "DNS Flushed."
'check DNS
Set objShell = CreateObject("WScript.Shell")
Set objScriptExec = objShell.Exec("ipconfig /all")
strIpConfig = objScriptExec.StdOut.ReadAll
WScript.Echo strIpConfig
'start McAfee
strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colServiceList = objWMIService.ExecQuery _
("Select * from Win32_Service where Name = 'enterceptAgent'")
For Each objService in colServiceList
If objService.State = "Stopped" Then
objService.StartService()
Wscript.Sleep 5000
Wscript.Echo "McAfee Started"
Else
Wscript.Echo "McAfee already running"
Wscript.Sleep 5000
End If
errReturnCode = objService.ChangeStartMode("automatic")
Next
'network test
set shell = createobject("wscript.shell")
shell.run("ping pmo2 -t")
干杯
恕我直言,至少有两个注册表_Primary DNS Suffix_设置的展示位置;我不确定它的偏好(对于[SuperUser](http://superuser.com/)而言):key [HKLM \ SYSTEM \ CurrentControlSet \ Services \ Tcpip \ Paramaters',值'Domain'和'SearchList ';和'HKEY_LOCAL_MACHINE \ SOFTWARE \ Policies \ Microsoft \ Windows NT \ DNSClient'键值'NV PrimaryDnsSuffix'。任何注册表操作可能需要重新启动才能应用... – JosefZ 2014-09-12 08:29:10
感谢JosefZ,我发现要操作的密钥位于HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ Tcpip \ Parameters \ Adapters中,但要求选择正确的GUID,这意味着它更容易手动而不是脚本来做,但我会考虑你的建议 – NXSmiggy 2014-09-12 12:28:41