Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

И снова взаимодействие двух процессов   Найти похожие ветки 

 
Dummy   (2004-04-27 16:23) [0]

Есть чужой процесс. В нем предусмотрена реакция на некое пользовательское сообщение (допустим это WM_USER). По этому сообщению он возвращает PChar. Надо думать, что в моем процессе этот PChar не имеет смысла... а можно ли прочитать эту текстовую строку при помощи ReadProcessMemory, задав в качестве lpBaseAddress полученный PChar? Это теоретический вопрос, я понимаю что можно взять и проверить самому, но на практике я уперся в проблему: как получить ID процесса, зная Handle его главного окна?

Заранее благодарен.


 
Digitman ©   (2004-04-27 16:45) [1]


> можно ли прочитать эту текстовую строку при помощи ReadProcessMemory,
> задав в качестве lpBaseAddress полученный PChar?


можно.  если время жизни блока памяти в целевом АП это подразумевает

проще же воспользоваться WM_COPYDATA


 
VMcL ©   (2004-04-27 16:46) [2]

>>Dummy  (27.04.04 16:23)

>В нем предусмотрена реакция на некое пользовательское сообщение
Может лучше будет WM_COPYDATA?

>Как получить ID процесса, зная Handle его главного окна
GetWindowThreadProcessId()


 
Dummy   (2004-04-27 17:05) [3]

УРА! Через ReadProcessMemory все работает! Попробовал разобраться с WM_COPYDATA. В MSDN вычитал следующее: "An application sends the WM_COPYDATA message to pass data to another application." Но мне же надо не to, а from))... или я чего-то не так понял?


 
MBo ©   (2004-04-27 17:12) [4]

>Но мне же надо не to, а from
Так пусть второе приложение по запросу твоему посылает WM_COPYDATA


 
Dummy   (2004-04-27 17:19) [5]

Так второе приложение не мое, как я заставлю его что-то слать?


 
Digitman ©   (2004-04-27 17:23) [6]


> Dummy   (27.04.04 17:19) [5]


нихрена себе !!! а WM_USER ты КАК умудрился его за ставить слать ? это же. как я понял, сабж вопроса ?


 
Dummy   (2004-04-27 19:00) [7]


> нихрена себе !!! а WM_USER ты КАК умудрился его за ставить
> слать ? это же. как я понял, сабж вопроса ?


Дык я его (второе, "чужое" приложение) не заставлял слать, оно вообще его не шлет, а наоборот принимает/обрабатывает и возвращает некий свой PChar. Неужели я так коряво вопрос сформулировал...

Короче, насколько я понял, WM_COPYDATA мне тут не поможет.

Спасибо всем за участие.



Страницы: 1 вся ветка

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.022 c
6-1081890622
Анонимщик
2004-04-14 01:10
2004.06.06
TIdTCPServer, TIdTCPClient


1-1085314726
Master Paleva
2004-05-23 16:18
2004.06.06
Процедура ReplaceDate


1-1085668023
killer
2004-05-27 18:27
2004.06.06
Клик по строке StringGrid-а


1-1085507296
td
2004-05-25 21:48
2004.06.06
большой вопрос про DLL


14-1084787238
Внук
2004-05-17 13:47
2004.06.06
Снова о комедиях