![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() прошу помощи, направьте меня в нужное русло..
задача такая - создаю свою программу на дельфи - форма, с двумя кнопками. другая вторая программа позволяет подключать dll и спользовать их в обработке данных. мне нужно чтобы вторая прога постоянно отслеживала нажатие кнопок моей прграммы. то есть моя программа по нажатию кнопки, пишет данные в буфер обмена, файл или еще как-то. самое простое это передавать значения через файл, но я как-то опасаюсь этого. про буфер обмена через winapi както мутно все Вобщем мне наверное надо написать dll и интерфейс взаимодействия. вторая программа в цикле будет гонять функцию опроса данных и если что-то появилось, то будет обрабатывать их. а вот как все это сделать я не знаю, не сталкивался раньше с таким подскажите куда смотреть Последний раз редактировалось harbor, 18.01.2013 в 07:00. |
#2
|
||||
|
||||
![]() Обмениваться данными можно через трубки (pipes), память с общим доступом, мэппинг файлы, через посыл сообщения окну и т.п.
Дальше ищем сами, а то будет как в Обнаженном Солнце. — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#3
|
|||
|
|||
![]() Цитата:
![]() да между программами я уже нашел много примеров а вот как в dll сделать - не знаю то есть у меня вот такое ограничение - чужая программа(не дельфи) работает в постоянном цикле и может что-то проверять . я к ней могу подключить через ее API свою dll с функцией проверки файла, если в файле появляется запись, то она обрабатывается заданным образом. а на дельфи я просто делаю форму с кнопкой которая пишет в файл запись-команду. но я не хочу делать через файл.. но других вариантов передачи команды не знаю как реализовать. может мне не надо делать отдельно свою программу с кнопкой, а реализовать вызов формы прямо из dll ? но я в этом пока темный лес.. наверное я много мутного накрутил - смысл на самом деле прост: есть какая-то программа, с возможностью подключить самописную dll и чтото проверять. мне с помощью этой dll нужно отслеживать нажатие двух кнопок на форме, кнопка1 и кнопка2. вот и все Последний раз редактировалось harbor, 18.01.2013 в 08:12. |
#4
|
||||
|
||||
![]() dll загружается в контекст чужой программы и оттуда ловит клавиши? Тебе надо чтоб длл передала в твою программу какие-то данные? дак так же сделать как в той куче примеров (правда есть тонкости, но можно сделать).
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#5
|
|||
|
|||
![]() Цитата:
нет, как раз наоборот, из моей программы через dll в чужую программу(чтобы управлять ей). вот я тут и ступорюсь. то есть в идеале есть некая функция, я ее описываю в dll сторонняя программа подсоединяет мою dll и крутит обработку в цикле. эта функция обнаруживает нажатие кнопки уже на форме моей программы и соответственно управляет чужой прогой.. через файл я не хочу. возможно через комбинацию клавиш, то есть моя прога формирует нажатие комбинаций кнопок, а функция из dll смотрит и проверяет, и если было нажатие то делает там чегонибудь может быть еще есть более доступные варианты. DLL наверное смогу написать по хелпу, всунуть туда функцию, вызывать и пр. а вот какой интерфейс лучше, хз Последний раз редактировалось harbor, 18.01.2013 в 08:55. |
#6
|
||||
|
||||
![]() Кидать данные между потоками можно, например, через PostThreadMessage. Если данных немного.
jmp $ ; Happy End! The Cake Is A Lie. |
#7
|
|||
|
|||
![]() я пока склоняюсь к вызову формы из длл
только пока не знаю как это делается |