
Я пытаюсь отключить NetBIOS и мне нужно сделать это через SCCM для нескольких клиентов.
Я пытаюсь сделать это через настройки соответствия и использую следующие настройки (они работают при локальном запуске):
Сценарий открытия
$adapter=(gwmi win32_networkadapterconfiguration | where {$_.ipenabled -eq "1"})
Foreach ($nic in $adapter) {if ($adapter.TcpIPNetBiosOptions -ne "2") {[System.Environment]::Exit(1)}} [System.Environment]::Exit(0)
Сценарий исправления
$adapter=(gwmi win32_networkadapterconfiguration | where {$_.ipenabled -eq "1"})
Foreach ($nic in $adapter) {
$adapter.settcpipnetbios(2)
}
Таким образом, запуск скрипта работает на каждой машине локально и, если он уже соответствует требованиям, SCCM выдает правильный ответ.
НО
Если значения реестра возвращаются как $adapter.TcpIPNetBiosOptions -ne "2", то соответствие конфигурации показывает "ошибку" при оценке в Configuration Manager, и исправление не запускается автоматически. Если я запускаю скрипт сам, то конфигурация возвращается как соответствующая.
Есть ли что-то, чего я не понимаю?
РедактироватьЯ вижу следующую ошибку, о которой сообщается
Ошибка обнаружения настроек 0x80070001 Неправильная функция. Windows
решение1
$adapter.settcpipnetbios(2)
должно быть
$nic.settcpipnetbios(2)
В противном случае не было бы причин для foreach
петли.