Что нового

Парсинг данных, возвращаемых netsh

Автор
K

k790

Новичок
Сообщения
239
Репутация
1
Redline [?]
И как итог - скрипт без парсинга netsh как такового
Интересно, теперь подключение по локальной сети некорректно ведёт, только маска подсети и dns1
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
k790 [?]
Интересно, теперь подключение по локальной сети некорректно ведёт, только маска подсети и dns1
Тогда будем тестировать и желательно чтобы в тесте поучаствовало несколько человек:
Код:
#include <Array.au3>
$oMyError = ObjEvent('AutoIt.Error', 'MyErrFunc')
Dim $aAdapters[1][7] ; массив для хранения параметров сетевых адаптеров
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20

$oWMI = ObjGet("winmgmts:\\.\root\CIMV2")
$oItems = $oWMI.ExecQuery("SELECT Index,NetConnectionID FROM Win32_NetworkAdapter WHERE (NetConnectionID LIKE '%')", "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
For $oItem In $oItems ;перебор всех адаптеров
    $aAdapters[UBound($aAdapters) - 1][0] = $oItem.NetConnectionID
    $aAdapters[UBound($aAdapters) - 1][6] = $oItem.Index
    ReDim $aAdapters[UBound($aAdapters) + 1][7]
Next

For $i = 0 To UBound($aAdapters) - 2
	ConsoleWrite('----' & @CRLF)
    ConsoleWrite('Index:   [' & $aAdapters[$i][6] & ']' & @CRLF)
    ConsoleWrite('Name:    [' & $aAdapters[$i][0] & ']' & @CRLF)
    $oItems = $oWMI.Get("Win32_NetworkAdapterConfiguration.Index=" & $aAdapters[$i][6])
    $aAdapters[$i][1] = '0.0.0.0'
    $aAdapters[$i][2] = '0.0.0.0'
    $aAdapters[$i][3] = '0.0.0.0'
    $aAdapters[$i][4] = '0.0.0.0'
    $aAdapters[$i][5] = '0.0.0.0'
	For $oSubItem In $oItems.IPAddress
		$aAdapters[$i][1] = $oSubItem
		ConsoleWrite('IP-addr: [' & $oSubItem & ']' & @CRLF)
	Next
	For $oSubItem In $oItems.IPSubnet
		$aAdapters[$i][2] = $oSubItem
		ConsoleWrite('Subnet:  [' & $oSubItem & ']' & @CRLF)
	Next
	For $oSubItem In $oItems.DefaultIPGateway
		$aAdapters[$i][3] = $oSubItem
		ConsoleWrite('Gateway: [' & $oSubItem & ']' & @CRLF)
	Next
	$iDNS = 4
	For $oSubItem In $oItems.DNSServerSearchOrder
		$aAdapters[$i][$iDNS] = $oSubItem
		ConsoleWrite('DNS #' & $iDNS - 3 & ':  [' & $oSubItem & ']' & @CRLF)
		$iDNS += 1
		If $iDNS = 6 Then ExitLoop
	Next
Next
;~ _ArrayDisplay($aAdapters)
$oMyError = 0
Func MyErrFunc()
	ConsoleWrite('Ошибка получения параметров интерфейса' & @CRLF)
EndFunc   ;==>MyErrFunc

Пишите что выдает такой код в консоль, если опасаетесь за личные данные, то конкретные IP можно немного подправить перед отправкой на форум, главное узнать что он вообще что-то выдает.

WinXP, SP2:
Код:
Index:   [1]
Name:    [Подключение по локальной сети]
IP-addr: [10.XXX.XXX.XXX]
Subnet:  [255.255.255.0]
Gateway: [10.XXX.XXX.XXX]
DNS #1:  [10.XXX.XXX.1]
DNS #2:  [10.XXX.XXX.2]
Да, я параноик
 

Zaramot

I ♥ AutoIt
Сообщения
1,160
Репутация
660
Мне выдало следующее:
Код:
Index:   [8]
Name:    [Подключение по локальной сети]
IP-addr: [95.65.118.196]
Subnet:  [255.255.255.128]
Gateway: [95.65.118.129]
DNS #1:  [217.26.150.5]
DNS #2:  [217.26.150.4]
Windows XP SP3 :smile:
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
подключение по vpn, но информация весьма скудна. вот все , что получил
Код:
Index:   [7]
Name:    [Подключение по локальной сети]
DNS #1:  [192.168.158.135]
DNS #2:  [192.168.158.136]
Index:   [25]
Name:    [Tunngle]
Index:   [26]
Name:    [VirtualBox Host-Only Network]
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
У меня один из сетевых интерфейсов отключён и поэтому скрипт вылетает с ошибкой на проверке ip, тк $oItems.IPAddress не является объектом. Имеет смысл добавить
Код:
$oMyError = ObjEvent("AutoIt.Error", "MyErrFunc")
;тело скрипта
$oMyError=0
Func MyErrFunc()
EndFunc   ;==>MyErrFunc

чтобы ругалось в пустоту и убрать If Not $oItems.DHCPEnabled Then - зачем оно нужно.
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
sngr
Да забываю обработчики цеплять.

sngr [?]
убрать If Not $oItems.DHCPEnabled Then - зачем оно нужно
Для того, чтобы узнать что адреса выдаются DHCP, плюс иначе тоже будет ошибка при $oItems.IPAddress/Subnet/DefaultIPGateway

Во избежание появления вылетов код поправил.
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
У меня dhcp выдаёт адрес и с включённой If Not $oItems.DHCPEnabled некажет ip и иже с ним, но если закоментировать это условие всё работает как надо.
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
Код:
Index:   [7]
Name:    [Подключение по локальной сети]
[Адрес присваивается через DHCP]
DNS #1:  [192.168.158.135]
DNS #2:  [192.168.158.136]
----
Index:   [25]
Name:    [Tunngle]
[Адрес присваивается через DHCP]
----
Index:   [26]
Name:    [VirtualBox Host-Only Network]
[Адрес присваивается через DHCP]
значит скрипт покажет только назначенные адреса?
вот что получает физическая сетевая карта
и создаваемое подключение
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
joiner
Закоментируй If Not $oItems.DHCPEnabled и скрипт покажет dhcp адрес.
Redline
Мне кажется все проверки с if then сдесь ненужны, тк с обработчиком ошибок через ObjEvent сдесь негде вылетать. Просто код напишет названии сетевого девайса и если ошибки ничего более, перейдёт к следующему девайсу.
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
sngr [?]
Мне кажется все проверки с if then сдесь ненужны, тк с обработчиком ошибок через ObjEvent сдесь негде вылетать. Просто код напишет названии сетевого девайса и если ошибки ничего более, перейдёт к следующему девайсу.
У меня статика, поэтому и просил проверить вас как это работает на разных настройках. Убрал лишние проверки.
Ссылка на пост с тестовым скриптом
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
Теперь всё работает как надо.
 

joiner

Модератор
Локальный модератор
Сообщения
3,557
Репутация
628
адреса физической сетевой карты теперь показывает как надо
Код:
Name:    [Подключение по локальной сети]
IP-addr: [10.16.16.185]
IP-addr: [fe80::98f4:d688:96c0:40f3]
Subnet:  [255.255.254.0]
Subnet:  [64]
Gateway: [10.16.16.1]
DNS #1:  [192.168.158.135]
DNS #2:  [192.168.158.136]
единственное, что подключение vpn не обрабатывается этим скриптом
 
Автор
K

k790

Новичок
Сообщения
239
Репутация
1
Redline
Код:
Index:   [11]
Name:    [Беспроводное сетевое соединение]
IP-addr: [192.168.1.250]
Subnet:  [255.255.255.0]
Gateway: [192.168.1.1]
DNS #1:  [192.168.1.1]
DNS #2:  [8.8.8.8]
----
Index:   [13]
Name:    [Подключение по локальной сети]
IP-addr: [0.0.0.0]
Subnet:  []
Ошибка получения параметров интерфейса
DNS #1:  [192.168.1.1]
----
Index:   [25]
Name:    [VirtualBox Host-Only Network]
IP-addr: [192.168.56.1]
Subnet:  [255.255.255.0]
Ошибка получения параметров интерфейса
Ошибка получения параметров интерфейса
+>13:42:48 AutoIT3.exe ended.rc:0
 

Redline

AutoIT Гуру
Сообщения
506
Репутация
375
k790
Хм, даже не знаю - это получается, что WMI плохо работает или что-то еще.
Парсить я это не возьмусь - слишком много возможных вариантов и всего не учтешь, может кто-то еще возьмется:
k790 [?]
Настройка интерфейса "Подключение по локальной сети"
DHCP разрешен: Нет
IP-адрес: 192.168.1.251
Маска подсети: 255.255.255.0
Основной шлюз: 192.168.1.1
Метрика шлюза: 0
Метрика интерфейса: 0
Статически настроенные DNS-серверы: 192.168.1.1
Статически настроенные WINS-серверы: Отсутствует
Зарегистрировать с суффиксом: Только основной

Настройка интерфейса "Беспроводное сетевое соединение"
DHCP разрешен: Нет
IP-адрес: 192.168.1.250
Маска подсети: 255.255.255.0
Основной шлюз: 192.168.1.1
Метрика шлюза: 1
Метрика интерфейса: 0
Статически настроенные DNS-серверы: 192.168.1.1
8.8.8.8
Статически настроенные WINS-серверы: Отсутствует
Зарегистрировать с суффиксом: Только основной

Настройка интерфейса "VirtualBox Host-Only Network"
DHCP разрешен: Нет
IP-адрес: 192.168.56.1
Маска подсети: 255.255.255.0
Метрика интерфейса: 0
Статически настроенные DNS-серверы: Отсутствует
Статически настроенные WINS-серверы: Отсутствует
Зарегистрировать с суффиксом: Только основной
Код под WMI с обработкой пустых значений выкладываю, но это не выход, как оказалось:
Код:
#NoTrayIcon
#region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=D:\Архив\ICONVISTA\ip.ico
#AutoIt3Wrapper_Res_Comment=Sergey
#AutoIt3Wrapper_Res_Description=Barbayanov
#AutoIt3Wrapper_Res_Fileversion=1.0.0.0
#AutoIt3Wrapper_Res_LegalCopyright=007
#AutoIt3Wrapper_Res_Language=1049
#endregion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <Array.au3>
#include <ButtonConstants.au3>
#include <ComboConstants.au3>
#include <GUIConstantsEx.au3>
#include <GUIConstants.au3>
#include <GuiIPAddress.au3>
#include <GuiComboBox.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Process.au3>
#include <Encoding.au3>

#region ### START Koda GUI section ### Form=смена ip.kxf
$Form1_1 = GUICreate("Change IP-address ", 207, 470, 444, 32)
$Combo1 = GUICtrlCreateCombo("", 8, 8, 185, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))
$Combo2 = GUICtrlCreateCombo("", 8, 40, 185, 25, BitOR($CBS_DROPDOWNLIST, $CBS_AUTOHSCROLL))
GUICtrlSetState(-1, $GUI_DISABLE)
$Radio1 = GUICtrlCreateRadio("Получить IP и DNS сервера авто", 8, 98, 193, 17)
$Radio2 = GUICtrlCreateRadio("Использовать свои настройки", 8, 122, 185, 17)
GUICtrlSetState(-1, $GUI_CHECKED)
$Radio3 = GUICtrlCreateRadio("Закладки", 8, 72, 177, 17)
$IPAddress1 = _GUICtrlIpAddress_Create($Form1_1, 42, 166, 113, 17)
$IPAddress2 = _GUICtrlIpAddress_Create($Form1_1, 42, 216, 113, 17)
$IPAddress3 = _GUICtrlIpAddress_Create($Form1_1, 42, 265, 113, 17)
$IPAddress4 = _GUICtrlIpAddress_Create($Form1_1, 42, 339, 113, 17)
$IPAddress5 = _GUICtrlIpAddress_Create($Form1_1, 42, 387, 113, 17)
$Group1 = GUICtrlCreateGroup("", 16, 136, 169, 162)
$Label1 = GUICtrlCreateLabel("IP адрес:", 26, 149, 50, 17)
$Label2 = GUICtrlCreateLabel("Маска подсети:", 26, 199, 84, 17)
$Label3 = GUICtrlCreateLabel("Основной шлюз:", 26, 248, 88, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlSetState(-1, $GUI_DISABLE)
$Group2 = GUICtrlCreateGroup("DNS сервера", 16, 301, 169, 113)
$Label4 = GUICtrlCreateLabel("Предпочитаемый DNS сервер", 26, 322, 157, 17)
$Label5 = GUICtrlCreateLabel("Альтернативный DNS сервер", 26, 370, 154, 17)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUICtrlSetState(-1, $GUI_DISABLE)
$Button1 = GUICtrlCreateButton("Пуск", 32, 426, 137, 33)
#endregion ### END Koda GUI section ###

$oMyError = ObjEvent('AutoIt.Error', 'MyErrFunc')
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20

Dim $aAdapters[1][7] ; массив для хранения параметров сетевых адаптеров
$wbemFlagReturnImmediately = 0x10
$wbemFlagForwardOnly = 0x20

$oWMI = ObjGet("winmgmts:\\.\root\CIMV2")
$oItems = $oWMI.ExecQuery("SELECT Index,NetConnectionID FROM Win32_NetworkAdapter WHERE (NetConnectionID LIKE '%')", "WQL", $wbemFlagReturnImmediately + $wbemFlagForwardOnly)
For $oItem In $oItems ;перебор всех адаптеров
    $aAdapters[UBound($aAdapters) - 1][0] = $oItem.NetConnectionID
    $aAdapters[UBound($aAdapters) - 1][6] = $oItem.Index
    ReDim $aAdapters[UBound($aAdapters) + 1][7]
Next

For $i = 0 To UBound($aAdapters) - 2
    $oItems = $oWMI.Get("Win32_NetworkAdapterConfiguration.Index=" & $aAdapters[$i][6])
    $aAdapters[$i][1] = '0.0.0.0'
    $aAdapters[$i][2] = '0.0.0.0'
    $aAdapters[$i][3] = '0.0.0.0'
    $aAdapters[$i][4] = '0.0.0.0'
    $aAdapters[$i][5] = '0.0.0.0'
	For $oSubItem In $oItems.IPAddress
		If $oSubItem <> '' Then
			$aAdapters[$i][1] = $oSubItem
		Else
			$aAdapters[$i][1] = '0.0.0.0'
		EndIf
	Next
	For $oSubItem In $oItems.IPSubnet
		If $oSubItem <> '' Then
			$aAdapters[$i][2] = $oSubItem
		Else
			$aAdapters[$i][2] = '0.0.0.0'
		EndIf
	Next
	For $oSubItem In $oItems.DefaultIPGateway
		If $oSubItem <> '' Then
			$aAdapters[$i][3] = $oSubItem
		Else
			$aAdapters[$i][3] = '0.0.0.0'
		EndIf
	Next
	$iDNS = 4
	For $oSubItem In $oItems.DNSServerSearchOrder
		If $oSubItem <> '' Then
			$aAdapters[$i][$iDNS] = $oSubItem
		Else
			$aAdapters[$i][$iDNS] = '0.0.0.0'
		EndIf
		$iDNS += 1
		If $iDNS = 6 Then ExitLoop
	Next
Next

$sComboText = ''
For $i = 0 To UBound($aAdapters) - 2
    If $sComboText <> '' Then $sComboText &= '|'
    $sComboText &= $aAdapters[$i][0]
Next
GUICtrlSetData($Combo1, $sComboText, $aAdapters[0][0])
_fill_from_array($aAdapters[0][0])

$sPathINI = 'c:\config.ini'
$var = IniReadSectionNames($sPathINI)
$sComboText = ''
If IsArray($var) Then
    For $i = 1 To $var[0]
        If $sComboText <> '' Then $sComboText &= '|'
        $sAdName = IniRead($sPathINI, $var[$i], 'name', 'default')
        $sComboText &= $sAdName
        $aAdapters[UBound($aAdapters) - 1][0] = $sAdName
        $aAdapters[UBound($aAdapters) - 1][1] = IniRead($sPathINI, $var[$i], 'ip', '0.0.0.0')
        $aAdapters[UBound($aAdapters) - 1][2] = IniRead($sPathINI, $var[$i], 'mask', '0.0.0.0')
        $aAdapters[UBound($aAdapters) - 1][3] = IniRead($sPathINI, $var[$i], 'gateway', '0.0.0.0')
        $aAdapters[UBound($aAdapters) - 1][4] = IniRead($sPathINI, $var[$i], 'dns1', '0.0.0.0')
        $aAdapters[UBound($aAdapters) - 1][5] = IniRead($sPathINI, $var[$i], 'dns2', '0.0.0.0')
        ReDim $aAdapters[UBound($aAdapters) + 1][6]
    Next
    GUICtrlSetData($Combo2, $sComboText, IniRead($sPathINI, $var[1], 'name', 'default'))
Else
    GUICtrlSetData($Combo2, 'default', 'default')
    $aAdapters[UBound($aAdapters) - 1][0] = 'default'
    $aAdapters[UBound($aAdapters) - 1][1] = '0.0.0.0'
    $aAdapters[UBound($aAdapters) - 1][2] = '0.0.0.0'
    $aAdapters[UBound($aAdapters) - 1][3] = '0.0.0.0'
    $aAdapters[UBound($aAdapters) - 1][4] = '0.0.0.0'
    $aAdapters[UBound($aAdapters) - 1][5] = '0.0.0.0'
    ReDim $aAdapters[UBound($aAdapters) + 1][6]
EndIf

GUISetState(@SW_SHOW)

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg

        Case $Radio1
            WinSetState($IPAddress1, '', @SW_DISABLE)
            WinSetState($IPAddress2, '', @SW_DISABLE)
            WinSetState($IPAddress3, '', @SW_DISABLE)
            WinSetState($IPAddress4, '', @SW_DISABLE)
            WinSetState($IPAddress5, '', @SW_DISABLE)
            GUICtrlSetState($Combo2, $GUI_DISABLE)

        Case $Radio2
            WinSetState($IPAddress1, '', @SW_ENABLE)
            WinSetState($IPAddress2, '', @SW_ENABLE)
            WinSetState($IPAddress3, '', @SW_ENABLE)
            WinSetState($IPAddress4, '', @SW_ENABLE)
            WinSetState($IPAddress5, '', @SW_ENABLE)
            GUICtrlSetState($Combo2, $GUI_DISABLE)
            _ip_config_1()

        Case $Radio3
            _ip_config_1()
            GUICtrlSetState($Combo2, $GUI_ENABLE)
        Case $Combo2
            _ip_config_1()

        Case $Button1
            GUICtrlSetState($Button1, $GUI_DISABLE)
            $name_a = GUICtrlRead($Combo1)
            If GUICtrlRead($Radio2) = $GUI_CHECKED Then
                $name_a = GUICtrlRead($Combo1)
                $ip_a = _GUICtrlIpAddress_Get($IPAddress1)
                $mask_a = _GUICtrlIpAddress_Get($IPAddress2)
                $gatewey_a = _GUICtrlIpAddress_Get($IPAddress3)
                $dns_a = _GUICtrlIpAddress_Get($IPAddress4)
                $dns2_a = _GUICtrlIpAddress_Get($IPAddress5)

                $ip = "netsh interface ip set address name=""" & $name_a & """ source=static addr=" & $ip_a & " mask=" & $mask_a & " gateway=" & $gatewey_a & " gwmetric=1"
                $dns = "netsh interface ip set dns name=""" & $name_a & """ source=static addr=" & $dns_a
                $dns2 = "netsh interface ip add dns """ & $name_a & """ " & $dns2_a

                _RunDos($ip)
                _RunDos($dns)
                _RunDos($dns2)
            EndIf

            If GUICtrlRead($Radio1) = $GUI_CHECKED Then

                $ip = "netsh interface ip set address name=""" & $name_a & """ source=dhcp"
                $dns = "netsh interface ip set dns name=""" & $name_a & """ source=dhcp"
                _RunDos($ip)
                _RunDos($dns)
            EndIf

            If GUICtrlRead($Radio3) = $GUI_CHECKED Then
                $name_a = GUICtrlRead($Combo1)
                $name_c = GUICtrlRead($Combo2)
                $ip_a = _GUICtrlIpAddress_Get($IPAddress1)
                $mask_a = _GUICtrlIpAddress_Get($IPAddress2)
                $gatewey_a = _GUICtrlIpAddress_Get($IPAddress3)
                $dns_a = _GUICtrlIpAddress_Get($IPAddress4)
                $dns2_a = _GUICtrlIpAddress_Get($IPAddress5)
                $ip = "netsh interface ip set address name=""" & $name_a & """ source=static addr=" & $ip_a & " mask=" & $mask_a & " gateway=" & $gatewey_a & " gwmetric=1"
                $dns = "netsh interface ip set dns name=""" & $name_a & """ source=static addr=" & $dns_a
                $dns2 = "netsh interface ip add dns """ & $name_a & """ " & $dns2_a
                _RunDos($ip)
                _RunDos($dns)
                _RunDos($dns2)
            EndIf
            GUICtrlSetState($Button1, $GUI_ENABLE)

        Case $GUI_EVENT_CLOSE
            Exit
    EndSwitch
WEnd

Func _ip_config_1()
    WinSetState($IPAddress1, '', @SW_ENABLE)
    WinSetState($IPAddress2, '', @SW_ENABLE)
    WinSetState($IPAddress3, '', @SW_ENABLE)
    WinSetState($IPAddress4, '', @SW_ENABLE)
    WinSetState($IPAddress5, '', @SW_ENABLE)
    If GUICtrlRead($Radio3) = $GUI_CHECKED Then
        $name_c = GUICtrlRead($Combo2)
    Else
        $name_c = GUICtrlRead($Combo1)
    EndIf
    _fill_from_array($name_c)
EndFunc   ;==>_ip_config_1

Func _fill_from_array($sSelectedText)
    For $i = 0 To UBound($aAdapters) - 2
        If $aAdapters[$i][0] = $sSelectedText Then
            _GUICtrlIpAddress_Set($IPAddress1, $aAdapters[$i][1])
            If $aAdapters[$i][1] = '0.0.0.0' Then WinSetState($IPAddress1, '', @SW_DISABLE)
            _GUICtrlIpAddress_Set($IPAddress2, $aAdapters[$i][2])
            If $aAdapters[$i][2] = '0.0.0.0' Then WinSetState($IPAddress2, '', @SW_DISABLE)
            _GUICtrlIpAddress_Set($IPAddress3, $aAdapters[$i][3])
            If $aAdapters[$i][3] = '0.0.0.0' Then WinSetState($IPAddress3, '', @SW_DISABLE)
            _GUICtrlIpAddress_Set($IPAddress4, $aAdapters[$i][4])
            If $aAdapters[$i][4] = '0.0.0.0' Then WinSetState($IPAddress4, '', @SW_DISABLE)
            _GUICtrlIpAddress_Set($IPAddress5, $aAdapters[$i][5])
            If $aAdapters[$i][5] = '0.0.0.0' Then WinSetState($IPAddress5, '', @SW_DISABLE)
            ExitLoop
        EndIf
    Next
EndFunc   ;==>_fill_from_array

$oMyError = 0
Func MyErrFunc()
	$t = True
EndFunc   ;==>MyErrFunc
 
Автор
K

k790

Новичок
Сообщения
239
Репутация
1
Redline
А если всё же сделать как на vb6 ?
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
k790
приложи получившийся файл
Код:
Run('wmic /output:"'&@ScriptDir&'\123" nicconfig  list full /format:hform','',@SW_HIDE)
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
Должен создаться файл 123 в папке со скриптом, требует пров админа.
 
Автор
K

k790

Новичок
Сообщения
239
Репутация
1
sngr
насколько я понял wmic это программа, так у меня такой нет
 

sngr

AutoIT Гуру
Сообщения
1,011
Репутация
409
Это встроенная в окна утилита. Запусти cmd.exe, там набери wmic и нажми enter.
 
Верх