Добрый день
Немного предыстории, чтобы сказать, что у меня нет злонамеренных намерений с моим вопросом: я занимаюсь автоматизацией своего дома и добился хорошего прогресса: несколько десятков устройств можно программно включать и выключать с любого ПК в доме, используя мое приложение VB6 (и там другие функции, такие как блокировка устройства для предотвращения его отключения).
Теперь следующим шагом является реализация саморазвитого скриптового языка для автоматизации последовательных задач. Язык определяет программы в папках задач. Например, одна из таких программ, называемая "Спокойной ночи", имеет задачу выключить все "не жизненно важные" машины на ночь.
Но как бы я ни старался, мне кажется, что я не могу заставить компьютер в локальной сети корректно завершить работу (т. Е. Выключить его или, что еще лучше, перевести его в спящий режим). Конечно, я могу забрать питание ПК, но хорошо ...
Выключение /s /m \\ComputerName кажется естественным выбором, но якобы он не работает на удаленном компьютере после Windows XP. Это, конечно, не работает в моей среде Windows 8.1: оно заканчивается «Доступ запрещен (5)». Запуск cmd от имени администратора не дает мне желаемого доступа.
Как я могу достичь своей цели через оболочку? (Или VB6, конечно, но когда это возможно через оболочку, я должен управлять и в VB6.)
Заранее спасибо!