Вверх ↑
Ответов: 36
Рейтинг: 2
#1: 2014-04-29 19:44:18 ЛС | профиль | цитата
Не получается, сам массив доступен и я могу работать с любым элементом
но в этой строке errEnable = objNetCard.EnableStatic(arrIPAddress, arrSubnetMask) используется сам массив, а не отдельный элемент

В таком исполнении работать не хочет, при этом с точки Sys.onData1 получаю нужный элемент


Sub doWork (Data, Index)
Set ip1 = sys.ip1
Set mask = sys.mask
Set gate1 = sys.gate1
dns1 = sys.dns1
dns2 = sys.dns2
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\" & strComputer & " ootcimv2")
Set colNetCards = objWMIService.ExecQuery("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
On Error Resume Next
For Each objNetCard in colNetCards
arrDNSServers = Array(dns1, dns2)
errEnable = objNetCard.EnableStatic(ip1, mask)
errGateways = objNetCard.SetGateways(gate1)
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next
Sys.onData1 (ip1.get(0))
End Sub


Скрипт который ниже работает, только массив тут собирается внутри скрипта arrIPAddress = Array(ip1, ip2), в чем разница между массивами?


Sub doWork (Data, Index)
ip1 = sys.ip1
ip2 = sys.ip2
mask = sys.mask
gate1 = sys.gate1
dns1 = sys.dns1
dns2 = sys.dns2
arrIPAddress = Array(ip1, ip2)
arrSubnetMask = Array(mask, mask)
arrGateways = Array(gate1)
arrDNSServers = Array(dns1, dns2)
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\" & strComputer & " ootcimv2")
Set colNetCards = objWMIService.ExecQuery("Select * From Win32_NetworkAdapterConfiguration Where IPEnabled = True")
On Error Resume Next
For Each objNetCard in colNetCards
errEnable = objNetCard.EnableStatic(arrIPAddress, arrSubnetMask)
errGateways = objNetCard.SetGateways(arrGateways)
objNetCard.SetDNSServerSearchOrder(arrDNSServers)
Next
Sys.onData1 "1"
End Sub


Еще раз уточняю сетевая карта одна, а присвоить айпиадресов мне нужно от 1 до 64.
карма: 1

0