Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.06.26;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.038 c
14-84730
SpoinT
2003-06-05 15:33
2003.06.26
Как изменить заголовок файла exe


3-83999
Explorer
2003-05-30 08:14
2003.06.26
Тестирование знаний


3-83946
basil
2003-06-04 11:32
2003.06.26
Два клиента BDE в сети не видят изменения пока не выключишь


1-84321
AndrewR
2003-06-16 06:28
2003.06.26
Как можно вызвать FindDialog, что бы в Memo текст искал. Может ке


14-84711
gn
2003-06-04 07:03
2003.06.26
голасование





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский