![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
А можно ли , передать указатель на массив (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...
>Такое ощущение, что указатель работает в рамках выделенной памяти для конкретной программы.
Предчувствия тебя не обманули.