Главная страница
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.027 c
2-1144765707
Кашперук Иван
2006-04-11 18:28
2006.04.30
Вопрос про Меню


3-1141986211
BanderLog
2006-03-10 13:23
2006.04.30
Выборка N+K записей на FB


1-1142968017
Dust
2006-03-21 22:06
2006.04.30
IniFile не создаётся и не записывается, и не понятно почему...


15-1144252234
Piter
2006-04-05 19:50
2006.04.30
Подскажите способ интерполяции и экстраполяции свойств газов


2-1144838409
Alex_C
2006-04-12 14:40
2006.04.30
Как отслеживать, запущено ли приложение?