Re[2]: Подскажите самый быстрый способ передачи данных между
От: mdw  
Дата: 14.08.04 19:24
Оценка:
Здравствуйте, Нахлобуч, Вы писали:

Н>Здравствуйте, <Аноним>, Вы писали:


А>>В чем идея. Есть два приложения: одно от CDialog а другое SDI.

А>>Приложение от СDialog скачивает файл *.jpg и передает второму его название.
А>>Второе приложение его отображает. Я попробовал передать текстовую строку с именем файла
А>>через WM_COPYDATA. Все работает, только за секунду успевает передаться 1-2 сообщения,
А>>а мне бы хотелось 5-6. (Дело именно в WM_COPYDATA, т.к. поэкспериментировав понял что если это сообщение не
А>>посылать и делать все в одном приложении, то файлы скачиваются 5-6 раз в секунду-к сожалению
А>>этот вариант меня не устраивает по-другим соображениям).
А>>Заранее благодарен

Н>Попробуйте тогда через RegisterWindowMessage() создать свое сообщение (в качестве строки можно испорльзовать GUID). МОжет быть быстрее получится...


С помощью собственного сообщения нельзя будет передать текст между процессами.
Для WM_COPYDATA, WM_SETTEXT etc Windows имеет специальную обработку.

Есть другие способы общения между процессами.
http://rsdn.ru/article/baseserv/ipc.xml
Автор(ы): Алекс Jenter
Дата: 10.03.2001
Обзор основных технологий IPC: Очень многим приложениям, если не большей части, требуется
информация от других приложений, либо они должны эту информацию сообщать.
Именно поэтому в операционную систему встраивается множество механизмов,
которые обеспечивают т.н. Interproccess Communication (IPC) — то есть
межпроцессное взаимодействие...


Или попробуйте задержать второе приложение на секунду, а затем посылайте в WM_COPYDATA сразу пять имен файлов, раз в секунду
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.