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

Вниз

Асинхронное выполнение процедур в своей программе.   Найти похожие ветки 

 
Maks Realov   (2003-06-09 16:01) [0]

Есть программа без формы - консольная, а лучше так - просто dll-файл, реализующий некий COM-компонент. Мне надо асинхронно послать в свой COM-компонент сообщение.
(WM_USER or RegisterWindowMessage) + PostMessage не подходит, т.к. у PostMessage первым параметром надо указывать Handle окна, которому сообщение посылается, а окна то у меня нет!
Через многопоточность это делать тоже не очень охота, может есть пути проще?
Спасибо!


 
DmS   (2003-06-09 16:57) [1]

> Мне надо асинхронно послать в свой COM-компонент сообщение
сообщения посылаются только окнам.
выход - использовать другие методы межпроцессного взаимодействия:
- файлы проецируемы в память
- сокеты
- семафоры и мьютексы
- критические секции


 
han_malign ©   (2003-06-09 16:59) [2]

DmS (09.06.03 16:57)
+
- pipe
- Mail slot


 
Maks Realov   (2003-06-09 17:07) [3]

Вы не поняли!!!
Мне не надо передавать какие-то данные (это к MMF относится), не надо синхронизировать потоки. Мне надо, что то типа этого:


procedure FirstFunc();
begin
// инициализируем некие данные
CallAsyncProc(инициализированные данные);
end;

procedure CallAsyncProc(инициализированные данные);
begin
// do somthing
end;

Смысл думаю понятен.
Надо что-то типа PostThreadMessage использовать, но как "словить" сообщение посланное таким способом я пока не понял.


 
DmS   (2003-06-09 17:14) [4]

что-то не врублюсь, почему предложеный тобой код не работает ?
зачем тебе посылать сообщение ?



 
Набережных С. ©   (2003-06-09 20:12) [5]

>Надо что-то типа PostThreadMessage использовать, но как "словить" сообщение посланное таким способом я пока не понял.

WaitMessage/PeekMessage/GetMessage

А еще есть QueueUserAPC


 
HolyGlory   (2003-06-09 20:59) [6]

А можно через FileMaping



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
14-84701
Soft
2003-06-03 13:56
2003.06.26
Длинные волосы


3-83853
explorer
2003-05-28 13:16
2003.06.26
Обработка ошибки хранимой процедуры


6-84496
Akni
2003-04-22 16:18
2003.06.26
Nonblocking Socket в отдельном потоке


3-84002
AlexBut
2003-05-29 06:39
2003.06.26
Код ошибки Jet


1-84090
Seldon
2003-06-08 00:38
2003.06.26
OwnerDraw в TPageControl