![]() |
Определение "Подключение по локальной сети" на сетевом адаптере
На клиентских ПК сетевые параметры прописываются статикой. В списке Сетевых подключений бывают виртуальные адаптеры (прим. Microsoft Video драйвер или сетевой интерфейс фискального регистратора). При работе скрипта параметры иногда прописываются в виртуальные адаптеры, а не в Подключение через сетевую карту. Подскажите, что нужно добавить? Использую скрипт
Скрытый текст
for /F "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where
^"NetConnectionStatus^=2^" get NetConnectionID /value') do set lanname=%%a netsh interface ip set address name="%lanname%" static %ip% %mask% %gate% 1 |
Цитата:
Цитата:
Цитата:
|
Подскажите, где ошибка
Скрытый текст
for /F "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where "NetConnectionStatus=2 AND PNPDeviceID LIKE 'PCI\\VEN%'" GET NetConnectionID /VALUE') do set lanname=%%a
|
iAngeR, как минимум — удвойте символ «%» в условии запроса при использовании внутри пакетного файла:
Код:
… LIKE 'PCI\\VEN%%'" … |
Цитата:
Код:
for /f "delims=" %%a in (' |
YuS_2, это, конечно, хорошо, это, конечно, правильно… Но:
Скрытый текст
Код:
C:\Мои проекты\0169>wmic.exe Path Win32_NetworkAdapter where "PhysicalAdapter = 'TRUE'" get Caption, PhysicalAdapter |
Цитата:
Цитата:
Код:
@echo off Пусть ТС отпишется, что же ему требуется, в итоге. |
YuS_2, не, я не про то. Я про то, что виртуальные адаптеры вполне себе мимикрируют под физические. Потому я и пишу выше, что это дело автора выбрать набор критериев, по которым из всех имеющихся отберётся только один искомый, и ничего более.
|
На всех ПК установлено по одной сетевой карте
|
Цитата:
Цитата:
ведь, имхо, это достаточно наглядно же: Код:
wmic path win32_networkadapter where physicaladapter=true get * /value Цитата:
|
Не-не. там как раз стоит только одна сетевая карта LAN. И иногда установлен Фискальный регистратор. После добавления второго знака %, в for /F "tokens=2 delims==" %%a in ('wmic path Win32_networkadapter where "NetConnectionStatus=2 AND PNPDeviceID LIKE 'PCI\\VEN%%'" GET NetConnectionID /VALUE') do set lanname=%%a ,выборка происходит верно. Еще проверю на нескольких машинах и отпишусь. Спасибо всем.
|
Время: 11:53. |
Время: 11:53.
© OSzone.net 2001-