Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Передача данных между процессами

Ответить
Настройки темы
C/C++ - Передача данных между процессами

Новый участник


Сообщения: 21
Благодарности: 1

Профиль | Отправить PM | Цитировать


Изменения
Автор: garkin123
Дата: 23-05-2009
Два процесса. Набор данных, который нужно передать из первого в оконную процедуру второго.
Простая передача указателя, я думаю, здесь не поможет? Это же будет локальный адресс для первого процесса.
Как можно представить эту информацию в ином виде, доступном для считывания из второго процесса? К примеру привести указатель на локальную память в "глобальный" вид. Либо считать память из памяти первого процесса по локальному указателю.

Отправлено: 20:44, 23-05-2009

 
pva pva вне форума

Аватара для pva

Ветеран


Сообщения: 1180
Благодарности: 279

Профиль | Отправить PM | Цитировать


Раздел MSDN называется Interprocess Communication
http://msdn.microsoft.com/library (в поиске набираешь что нужно)
вкратце варианты:
1. через внешний файл
2. через общую память (тоже через файл, типа swap-а)
3. перенаправление потоков ввоба-вывода (только при старте процесса)
4. через pipe, mailslot
5. DDE
6. ActiveX
По указателю взять не получится (если не вести отладку)
Это сообщение посчитали полезным следующие участники:

Отправлено: 07:14, 25-05-2009 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для DillerInc

Обратный инженер


Сообщения: 644
Благодарности: 47

Профиль | Отправить PM | Цитировать


garkin123, в первом процессе создаёшь file mapping с именем.Туда помещаешь свои данные.Во втором процессе открываешь этот file mapping по этому самому имени.Секция видна в обоих процессах.Это называется разделяемая память.
Вот функции,которые тебе понадобятся:
CreateFileMapping
MapViewOfFile
OpenFileMapping
UnmapViewOfFile

-------
То,что неясно,следует выяснить.То,что трудно творить,следует делать с великой настойчивостью. © Конфуций

Это сообщение посчитали полезным следующие участники:

Отправлено: 11:46, 25-05-2009 | #3


Новый участник


Сообщения: 21
Благодарности: 1

Профиль | Отправить PM | Цитировать


Спасибо, уже сделал через мапинг.

К списку способов передачи стоит также добавить оконное сообщение WM_COPYDATA.

Отправлено: 14:48, 25-05-2009 | #4



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Программирование и базы данных » C/C++ - Передача данных между процессами

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Распределение ресурсов между процессами Gangabass Общий по FreeBSD 2 25-06-2007 13:14
Передача данных в другое окно dascon Вебмастеру 7 14-02-2006 13:45
Бесперебойная передача данных Guest Сетевые технологии 1 03-09-2004 02:07
Передача данных через crossover DMS Сетевые технологии 4 24-12-2003 01:14
Синхронная передача данных Dos Хочу все знать 1 14-06-2003 00:32




 
Переход