Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.04.30;
Скачать: CL | DM;

Вниз

межпроцессное взаимодейтсвие   Найти похожие ветки 

 
DSKalugin ©   (2006-02-04 13:49) [0]

есть ДЛЛ, которую использует чужая программа. Этих программ может быть запущено несколько копий одновременно (разрешено). Как мне осуществить обмен данными между этими ДЛЛ-ками. Делается это для того чтобы они не дублировали действия друг друга. Например,
стартует вторая копия программы
проверяет наличие предыдущих запущенных копий
выясняет какие задачи эти копии выполняют(по ID задачи)
и берется за выполнение следующей по списку.

Список этот во внешнем источнике

Буду рад выслушать любые мысли/идеи, возможно это лучше решить каким-нибудь другим способом

Сейчас рассматриваю возможность использования атомов GlobalAddAtom, Mutex, memory mapped files


 
kaZaNoVa ©   (2006-02-04 14:33) [1]

еще  WM_CopyData, сокеты :)


 
Alex Konshin ©   (2006-02-04 15:00) [2]

и NamedPipes.
Бывают еще очереди, забыл как сервис называется.

MMF лучше всего подходят, но синхронизацию все равно нужно делать именованными событиями, семафорами или мутантами.
Но можно сделать на NamedPipes, тогда в перспективе можно будет допустить обработку с разных компьютеров, правда синхронизация усложнится.


 
DSKalugin ©   (2006-02-04 15:10) [3]


> WM_CopyData

А принимать сообщения как в ДЛЛ(форм нет)?


 
DSKalugin ©   (2006-02-04 15:11) [4]

маил слоты?
> Бывают еще очереди, забыл как сервис называется.


 
kaZaNoVa ©   (2006-02-04 15:28) [5]

DSKalugin ©   (04.02.06 15:10) [3]
А принимать сообщения как в ДЛЛ(форм нет)?

маленькое невидимое апи-окно ..


 
ZzzzZ   (2006-02-07 07:02) [6]

Разделяемая секция, не подходит?
Или промапленный фаил?


 
Fay ©   (2006-02-07 07:31) [7]

> Разделяемая секция, не подходит
Это хто? Critical section? Нет, не подходит, т.к a critical section can be used only by the threads of a single process


 
MBo ©   (2006-02-07 07:38) [8]

>Fay  
>Это хто? Critical section?

Нет, shared секция в DLL.
Но Дельфи не обеспечивает возможности их создания. Есть только нетривиальный обходной путь от Peter Vones



Страницы: 1 вся ветка

Текущий архив: 2006.04.30;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.047 c
2-1144872057
Дарья
2006-04-13 00:00
2006.04.30
мини проблема


2-1144910064
fast2
2006-04-13 10:34
2006.04.30
Как записать на паскале (в Делфи) выражение:


3-1141629277
DancerMan
2006-03-06 10:14
2006.04.30
Как в процессе выполнения программы узнать кодировку dbf файла?


4-1139395573
rOOse
2006-02-08 13:46
2006.04.30
PopUp Menu


2-1144731535
Neiroman
2006-04-11 08:58
2006.04.30
Random()