Dynamic data exchange (DDE) — механизм взаимодействия приложений в операционных системах Microsoft Windows и OS/2.
Кто-нибудь делал программы, где использовался бы этот механизм?
Программа из которой мне надо получить данные называется - DDEDriver v.2.1 (может кто-то знает)
Этот топик читают: Гость
Ответов: 82
Рейтинг: 2
|
|||
карма: 0 |
|
Ответов: 2125
Рейтинг: 159
|
|||
Это очень старый механизм взаимодействия. Насколько я помню, до сих пор никому не надо было Правда, кто-то уже спрашивал про OPC Server...
А известно, как подключаться (service name, topic name) и что именно передаётся? Или этот драйвер сам подключается (нужно указывать имена сервиса,топика и элемента)? |
|||
карма: 1 |
|
Ответов: 82
Рейтинг: 2
|
|||
DDEDriver v.2.1 в настройках DDE указаны:
DDE раздел: ELEMER (для определения DDE сервера) DDE объект: S (для формирования названия DDE-пунка) Как я понял здесь менять ничего не надо. Этот драйвер работает с Office Excel (которого нет на том компе на котором стоит этот драйвер). В ячейку таблицы вводится формула: ddedriver|ELEMER!S1 где: ddedriver – имя приложения, в данном случае программы ddedriver.exe ELEMER – имя DDE-сервера S1 – имя DDE-пункта (как я понял - S1, S2, ... S255, смотря сколько датчиков нужно опросить) Алексей писал(а): что именно передаётся?DDEDriver работает с COM-портом, берет показания датчиков, которые собственно и выводит в Edit. Это никак недопустимо, нужен анализ (график) и запись данных, что я и хочу сделать в HiAsm. |
|||
карма: 0 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Алексей, а напрямую работать с датчиками подключёнными к COM через HiAsm разве нельзя - я делал такую програмку опроса через COM температурных датчиков.
|
|||
карма: 19 |
|
Ответов: 82
Рейтинг: 2
|
|||
Леонид, какие датчики использовались? У меня приборы фирмы Элемер - ТПУ 0304, а работают они через ИРТ 5922, ИРТ 5920 вот их и нужно опрашивать. Н а самом деле Элемер не распространяет документации по работе с COM.
Да и к тому же ПО предоставленное несколько неуклюже, не совсем то что мне нужно. Леонид писал(а): Я делал такую програмку опроса через COM температурных датчиков.Может пример приведешь? |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Алексей поищи в интернете монитор COM порта, попробуй сделать анализ запросов и ответов при опросе датчиков, на основе этих данных и можно будет что то сделать (так как я понимаю протокол обмена не документирован или у тебя его нет), если в обмен простой (без проверки CRC и не шифрован) то я думаю реально что то сделать, хотя и с CRC можно попробовать разобраться.
ели монитор не найдёшь солью куда нибудь |
|||
карма: 4 |
|
Ответов: 82
Рейтинг: 2
|
|||
andrestudio писал(а): протокол обмена не документированДа, конечно документация есть, но я не сотрудник этой фирмы и мне её просто так не дадут. andrestudio писал(а): обмен простойНет, не думаю, шифрование вроде какое-то есть. andrestudio писал(а): если монитор не найдёшь солью куда нибудьБуду рад Тут было мыло |
|||
карма: 0 |
|
Ответов: 5227
Рейтинг: 587
|
|||
Солью вечером, сейчас на работе. Убирай мыло а то спамеры замучают
|
|||
карма: 4 |
|
Ответов: 82
Рейтинг: 2
|
|||
andrestudio писал(а): Солью вечеромУже не надо, нашел какой-то ComAPI. Но всё таки хотелось бы через DDE |
|||
карма: 0 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Алексей, нашёл только начало работы, больше ничего, но если нужно, не трудно и повторить - делал опрос датчиков и запись результатов в Excel.
|
|||
карма: 19 |
|
Ответов: 82
Рейтинг: 2
|
|||
Леонид писал(а): делал опрос датчиков и запись результатов в Excel.Мне не совсем понятно куда в компонент записывть запрос Запрос: :<номер прибора>;1;<код номер канала>;<контрольная сумма><CR> Ответ: !<номер прибора>;<измеряемое значение>;<контрольная сумма><CR> |
|||
карма: 0 |
|
Разработчик
Ответов: 26149
Рейтинг: 2127
|
|||
Алексей писал(а): Но всё таки хотелось бы через DDEА кто мешает поднять DDE-клиента в том же IC. Но от динамики никуда не денешься, ведь S до 255 расшарено. Тут сложность только в одном (для меня, например) -- нет ни оборудования, ни драйвера, чего откуда ловить -- черт его знает. |
|||
карма: 22 |
|
Ответов: 2125
Рейтинг: 159
|
|||
nesco писал(а): А кто мешает поднять DDE-клиента в том же ICНикто не мешает, вот пожалуйста: code_8981.txt Но лучше всё-таки компонент сделать. Дублирование кодов, запрошеных ресурсов и т.д. это нехорошо как-то. |
|||
карма: 1 |
| ||
файлы: 1 | code_8981.txt [5.7KB] [245] | ||
Голосовали: | Алексей |
Разработчик
Ответов: 26149
Рейтинг: 2127
|
|||
tsdima, я гляжу, что ты клиентскую часть сделал как в ddeml и чсатично CallBack из ddeman. Если делать компоненты, то надо ddeml в пакет встраивать, так проще будет. ИМХО
------------ Дoбавленo: Можно пойти дальше и портировать к нам ddeman. У меня тут вопрос назрел -- а как еще долго мелкомягкие будут поддерживать этот тип обмена данными, войдет ли он в будушие версии Винды? |
|||
карма: 22 |
|
Ответов: 8926
Рейтинг: 823
|
|||
Алексей, вся программа удалена при замене диска месяца 4 тому назад (раньше надо было ) - выложенное случайно осталось в 157 версии HiAsm в папке My; запрос - в поле Edit, датчик имел много команд - проверки всякие, установки сигнальных точек и т. д., но если нет описания протокола обмена, то расшифровать его, даже имея записи сигналов, очень непросто, можно напороться на комбинации, которых нет в записях.
Кроме того обязательно продумать юридические последствия применения СВОЕЙ программы - всегда можно оказаться крайним, даже если всем будет ясны причины каких-либо ЧП. |
|||
карма: 19 |
|