Вопрос

У меня есть скрипт TCL, работающий в Windows. Мне нужно связаться со старым приложением vc ++ 6, работающим в другом процессе. Мне нужно иметь двухстороннее общение. В Linux я бы использовал dbus, но какую стратегию IPC я должен использовать для Windows?

Это было полезно?

Решение

Tcl в Windows имеет встроенную поддержку dde (см. docs для команды dde), которая может помочь, если другое приложение поддерживает это. Другим вариантом является расширение TWAPI (API-интерфейс Tcl Windows), в котором есть средства для отправки ввода с клавиатуры и мыши в другое приложение, см. http://twapi.magicsplat.com/input.html .

Другие советы

Boost.interprocess имеет различные способы, такие как в качестве разделяемой памяти и передачи сообщений для C ++. Вы всегда можете начать там и посмотреть, что совместимо с вашим сценарием.

Простые старые сокеты прекрасно работают в TCL в Windows (и Linux, и везде, где реализован TCP / IP:)

Список параметров из MSDN: http: / /msdn.microsoft.com/en-us/library/aa365574(VS.85).aspx

Если вы хотите что-то более «предприимчивое», есть также очередь сообщений Windows .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top