Каким образом передать handle из одной программы в другую
От: gibz  
Дата: 23.01.07 12:05
Оценка:
т.е. есть dll она получает handle порта при подключении,
как передать этот handle в другую программу
Posted via RSDN NNTP Server 2.0

23.01.07 17:23: Перенесено модератором из 'C/C++' — Odi$$ey
Re: Каким образом передать handle из одной программы в другу
От: hobby  
Дата: 23.01.07 12:23
Оценка:
Здравствуйте, gibz, Вы писали:

G>т.е. есть dll она получает handle порта при подключении,

G>как передать этот handle в другую программу

DuplicateHandle?
Re: Каким образом передать handle из одной программы в другу
От: ILva_ Россия  
Дата: 23.01.07 12:48
Оценка:
Здравствуйте, gibz, Вы писали:

G>т.е. есть dll она получает handle порта при подключении,

G>как передать этот handle в другую программу

Использовать file mapping
Re: Каким образом передать handle из одной программы в другу
От: Quintanar Россия  
Дата: 23.01.07 13:24
Оценка:
Здравствуйте, gibz, Вы писали:

G>т.е. есть dll она получает handle порта при подключении,

G>как передать этот handle в другую программу

handle — это от файла? Если да, то в произвольный другой процесс его не передать (значение передать можно, но файла за ним не будет).
Re: Каким образом передать handle из одной программы в другу
От: FoolS.Top Армения  
Дата: 23.01.07 14:49
Оценка:
Здравствуйте, gibz, Вы писали:

G>т.е. есть dll она получает handle порта при подключении,

G>как передать этот handle в другую программу

Какой порт? COM или LPT? Есть три способа передачи handle-а другому процессу (см. Рихтер). Наследование, Open... и DuplicateHandle. Наверно в Вашем случае (если новый процесс создается в DLL или есть handle другого процесса) можно наследовать или Duplicate...
Feierlich, misterioso
Re: Каким образом передать handle из одной программы в другу
От: NeuroVirus Россия  
Дата: 23.01.07 14:49
Оценка:
Здравствуйте, gibz, Вы писали:

G>т.е. есть dll она получает handle порта при подключении,

G>как передать этот handle в другую программу

Передать число в другую программу можно тремя десятками разных способов, но правильным будет:
1) DuplicateHandle в чужом процессе и передать как угодно в чужой процесс
2) DuplicateHandle с флагом bInheritHandle в своем процессе и CreateProcess с флагом bInheritHandles
(сходу больше не вспомню)
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.