А одно другому не мешает. Оба верны. Но моё определение полезнее :P , ибо из него автоматически вытекает простой алгоритм конверсии одного в другое в несколько строк длиной.
Мм, кажется вы не понимаете принцип работы в powershell с DOM через COM-объект InternetExplorer.Application? Иначе бы этой проблемы у вас не было. Вы бы просто сделали цикл while, что-то вроде:
while ($ie.ReadyState -ne 4) {Start-Sleep -Seconds 1}
, и дождались полной готовности страницы со всеми сопутствующими потрохами.
Вообще говоря, можно решить задачу удалённо без обхода и при наличии доступа только через VNC.
С помощью Sikuli (www.sikuli.org/) либо VncDo (vncdotool.readthedocs.io/en/latest/). Но, если не было ранее опыта работы с ними, то для 100 писюков времязатраты админа пожалуй выйдут поболе, чем пробежаться по всем и запустить заранее заготовленный скрипт с сетевой шары.
Ансибл - готовый фреймворк, где уже за вас решены вопросы типа "а как выделить кучу компьютеров по хитрому признаку", "а как обеспечить гарантированное единоразовое применение скрипта по всем компьютерам", "а как обеспечить перезагрузку посередине скрипта" и т.д. Вы всё это можете в принципе реализовать на повершельчике, но быстро запаритесь.
Вам никто не мешает продолжать писать скриптики на повершельчике, просто появляется возможность пускать их на выполнение из-под Ансибла, решая его средствами все эти организационные проблемы.
Для базовых операций типа логона на контроллере и обновления-применения политик скорость соединения не важна. Разве что если вы балуетесь roaming profiles, централизованным деплоем софта и обновлений со своего сервера... Практически - даже при использовании SSTP VPN (который туннелирует трафик через HTTPS с относительно большим оверхедом) замедления работы не ощущается, без него файло лилось там скажем 8 метров в сек, с ним будет 7.
Конечно, есть куча вариантов организации отказоустойчивости по VPN, начиная от наколенных скриптов "пробуем один адрес, не получилось - пробуем другой".
Евгений Ферапонтов: Порвётся. Но останется основной цикл скрипта, из которого это можно обнаружить и её перезапустить :)
Ansible безагентный. Нужна только лёгкая виртуалка с никсами для него самого и открыть powershell-remoting через WS-Man на хостах (готовый скрипт - https://github.com/ansible/ansible/blob/devel/exam...
Илья лук: Там никаких чудес нет. Берём дистрибутив винды, там в папочке sources они лежат. Есть штатные и сторонние утилитки для их монтирования как диск и манипулирования файлами (я, например, использую файл startnet.cmd в boot.wim для того, чтобы запускать оттуда свои скрипты с монтированием сетевого диска, выбором ОС и файла автоответов для дальнейшей установки).
Без домена я не знаю способа гранулировать доступ к буферу обмена :( Может пипл подскажет... Как вариант - если с никсами у вас хорошо, то можно рядом развернуть мелкую виртуалку с guacamole, запускать народ через неё, и рулить доступностью буфера обмена её средствами. Попутно упростится процедура подключения к терминалу.