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