Как редактировать форму telnet программно?

Я даже не уверен, правильно ли я сформулировал этот вопрос. Позвольте мне объяснить мою ситуацию.

У меня есть приложение, размещенное в среде OpenVMS, доступ к которому осуществляется через Telnet. Мне нужно программно выполнить определенные задачи.

До сих пор я мог отправлять и получать сообщения, используя клиент C# Telnet. Я могу выполнять задачи, отправляя команды и получая ответы. Но для одной задачи мне нужно отредактировать форму, чтобы изменить некоторую информацию. Команда выглядит ниже

>modify page <page_no>

Как только я ввожу вышеупомянутую команду, весь терминал загружается с этой формой, я должен использовать страницу вниз, чтобы пройти через поля, нажать клавишу ввода, чтобы редактировать текст, и использовать Ctrl-Z, чтобы сохранить его.

Я не уверен, как выполнить эту задачу программно.

Я не знаком с telnet или VxWorks. Я не уверен, что вышеупомянутое является функцией Telnet или OpenVMS. Пожалуйста, помогите.

1 ответ

Решение

Это должно быть легко понять благодаря ясному тексту telnet:D Неважно, на какой платформе работает ваша цель. Все, что вам нужно помнить, это то, что специальные клавиши, такие как ctrl-z или page down, являются просто символами в потоке данных. Ctrl-z обычно 0x1a, и я не уверен, какая страница внизу у меня на макушке, но вот как вы можете это выяснить:

  1. Получите wireshark http://www.wireshark.org/ и установите его, если у вас его еще нет.
  2. Запустите wireshark up и перехватите весь трафик на вашей сетевой карте, который будет передавать соединение к цели.
  3. Начните обычный сеанс telnet с целью и выполните все команды (включая нажатие страницы и ctrl-z).
  4. Остановите захват Wireshark, а затем отфильтруйте все, кроме телнет связи между вами и целью.
  5. Посмотрите на данные, которые были отправлены для выдачи Ctrl-Z, и страницы вниз.
  6. Поместите эти символы в ваш поток telnet, когда вы будете готовы выполнить эти команды.

Легко.

Другие вопросы по тегам