Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.016 c
9-83839
MRB_SPB
2003-01-16 12:49
2003.06.26
Геометрия


3-83982
Ренат
2003-05-30 08:29
2003.06.26
Некорректная запись в базе


14-84622
Skier
2003-06-09 15:02
2003.06.26
Экспорт по имени


14-84743
Сатир
2003-06-02 13:18
2003.06.26
Не верьте гороскопам


1-84423
bloodman
2003-06-08 01:05
2003.06.26
HotKey




   Наверх