Я пытаюсь сделать следующее с VM доступ через RDP:виртуальная машина, удаленный рабочий стол, SendKeys C#
Запуск командной строки Thread.Sleep достаточно долго, чтобы отключить RDP сессии (10 секунд, его нормально, если его дольше)
Sendkeys для запуска командной строки для запуска exe, который работает в интерактивном режиме. Прекрасным примером может служить FTP. Если вы запустите FTP без параметров, вы получите интерактивное приглашение. Его длинная история о параметрах безопасности, но в командной строке не будет работать, он должен быть интерактивным .. Этот процесс не будет работать при подключении к RDP
У меня есть все, что работает для одной из основных проблем, за исключением. Как только я отключусь от RDP, для работы с кнопками sendkeys нет клавиатуры. Я не помню точной ошибки, но это было в основном «без клавиатуры».
У меня возникла идея, что, возможно, я смогу создать виртуальную клавиатуру, которая все еще будет «подключена», когда заканчивается сеанс RDP.
Я проверил, что процессы, даже DOS из командной строки будут продолжать работать после отключения RDP. Проблема изолирована для отправки ключей и клавиатуры виртуальной машины, когда она не подключена.
Я искал высоко и низко, но у меня есть я в тупике. Я понимаю, что это обходное решение вместо решения проблемы у источника, но у меня есть только этот вариант.
Единственная альтернатива, о которой я мог думать, - это что-то вроде работы SendKeys, но будет работать без клавиатуры?
Редактировать Просто, чтобы быть немного более ясным. Я нашел много других решений, которые будут работать, но я остался с этой единственной идеей.
Правила:
Ничто не может быть установлен на виртуальной машине, например, как «тест автоматизации» инструмента
Все должно быть построено в дом с нуля, используя VS2012 C# .net до 4.5.
Возможно, я могу найти инструмент автоматизации тестирования с открытым исходным кодом, но нет времени для исследования и преобразования того, что кажется сложным приложением.
Любые идеи наиболее ценятся.
Кажется мне как [проблема XY] (http://www.perlmonks.org/?node=xy+problem) – EZI
Ваш вопрос о XY. Я просто хочу сохранить боковую панель и сконцентрироваться на конкретной проблеме. Если даже возможно автоматизировать нажатия клавиш на виртуальной машине через C#. Чтобы запустить процесс при подключении к RDP, отключите его, и процесс продолжится. – JoeCM