DDE с использованием System.Windows.Automation
Можно ли использовать пространство имен.NET System.Windows.Automation и сделать эквивалент старого DDE?
Мое требование - прочитать текст в командном окне (которое также может быть экраном мэйнфрейма) из моего приложения.NET Windows Forms.
Для этого лучше использовать http://ndde.codeplex.com/?
2 ответа
Как автор упомянутой библиотеки DDE, я категорически умоляю вас не использовать ее. Дело не в том, что это не работает. Просто DDE сам по себе ужасен; возможно худший протокол межпроцессного взаимодействия когда-либо.
Что вы должны сделать, это перенаправить стандартный поток вывода из окна консоли. Это можно сделать, установив новый поток через Console.SetOut
, Если терминал идет от мэйнфрейма, используйте NetworkStream
класс для чтения из порта Telnet.
Насколько я знаю System.Windows.Automation не поддерживает DDE.
В прошлый раз, когда мне приходилось работать с DDE, мы использовали мост vb6.