Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

А можно ли , передать указатель на массив (SendMessage) ...


Oljas ©   (2006-05-04 10:37:00) 

Другой программе ?

Ну , предстваим себе.

type
pMas = ^tMas;
tMas = array[0..1000] of integer;

var
m:tMas;
h:THanlde;
begin
new(m);
m[0] := 1;
m[1] := 2;
m[2] := 3;
h := ... ;
SendMessage(h,MY_MSG,integer(m),0);
end


а в другом приложении

m1:tMas;
...
m1 := Pointer(lparam);
...


Интересно,  что в пределах одной программы это работает ,
а уже в другой программе, в массиве мусор.
Такое ощущение, что указатель работает в рамках выделенной памяти для конкретной программы.
Где я не прав ?
ткните туда да где это можно прочитать ...


isasa   (2006-05-04 11:33:00) [1]

REA   (04.05.06 10:41) [1]
+
Маршалинг
+
SendMessage( ..., WM_COPYDATA, ...


Oljas   (2006-05-04 10:45:00) [2]

Спасибо, а все выше изложенное, эхх , конечно в голову приходило.


REA   (2006-05-04 10:41:00) [3]

Читать IPC: DDE, OLE, COM, NamedPipes, Mailslots, TCP...

>Такое ощущение, что указатель работает в рамках выделенной памяти для конкретной программы.

Предчувствия тебя не обманули.


Наверх

Титульная страница Поиск, карта сайта Написать письмо