С этой целью существуют пакеты Perl. Например, Сеть модулей CPAN:: Облегченный:: FTP и Сеть:: FTP.
Это позволит Вашему сценарию принимать решения на основе информации с сервера. Например, если имя файла не является постоянным (может содержать дату или номер версии), затем, сценарий может обработать каталог, перечисляющий прежде, чем решить который файл загрузить.
Я успешно использовал его для автоматизации загрузки/обновления больших молекулярных баз данных последовательности.
Я использую, это для удаления принтеров, кажется, работает во всех сценариях.
Dim objNetwork, objPrinters
Set objNetwork = CreateObject("WScript.Network")
Set objPrinters = objNetwork.EnumPrinterConnections
' ### Delete selected network printer
objNetwork.RemovePrinterConnection "\\GARCIA\Dell Printer 3100cn PS", True, True
objNetwork.RemovePrinterConnection "\\HENDRIX\Dell Printer 3100cn PS", True, True
objNetwork.RemovePrinterConnection "\\HENDRIX\Brother PCL5e Driver", True, True
objNetwork.RemovePrinterConnection "\\HENDRIX\HP LaserJet 4250 PS", True, True
objNetwork.RemovePrinterConnection "\\STANLEY\HP LaserJet 4250 PS", True, True
Я не уверен, как ОС обрабатывает принтеры RDP, рассматривает ли она их как "локальные" принтеры или "сетевые" принтеры. Если принтеры обнаруживаются в реестре под HKLM\System\CurrentControlSet\Control\Print\Printers, то используйте printui.dll для удаления объекта принтера как это:
rundll32 printui.dll, PrintUIEntry/dl/n "НАЗВАНИЕ ПРИНТЕРА ИДЕТ СЮДА"
OTOH, если принтеры обнаруживаются в реестре под HKCU\Printers\Connections, то метод Вы используете, должен был добиться цели. Возможно, существует что-то еще препятствующее тому, чтобы соединения были удалены? Пользователи подключены к терминальному серверу, когда сценарий работает?