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

Вниз

Ткните меня носом в FAQ   Найти похожие ветки 

 
TUser   (2004-05-24 17:55) [0]

Простая штука, вроде, но чего-то никак не получается. Надо передать в программу некоторое кол-во инфы для обработки + указатель на структуру, в которой будет возвращен результат. Делаю так (в разных вариациях)
type
 PInf:=^TInf;
 TInf = packed record
  ...
  end;
 PRes:=^Tres;
 TRes = packed record
  ...
  end;
Поля записей - интегеры, строки (точнее - PChar), массивы, + хэндел той проги, которая посылает все это дело.
Посылаю так
var
 inf:TInf; res:TRes;
 sendMessage(H,W,LongInt(@Inf), LongInt(@,Res));

После посылания читаю в той проге, куда посылаю
 r:=PRes(LParam);
 i:=TInf (WParam);
В результате читается какая-то лажа. Строки пробовал передавать и как PChar и как String. Читается какое-то барахло. При попытке обратится к PChar вылетает AV. Где грабли (понятно, что в руках, конечно, но покажите, как правильно сделать такие штуки)?


 
VMcL ©   (2004-05-24 17:58) [1]

>>TUser  (24.05.04 17:55)

Взаимодействие межпроцессное или внутрипроцессное? Если первое, то см. WM_COPYDATA.


 
WebErr ©   (2004-05-24 18:07) [2]


>  i:=TInf (WParam);

А надо PInf(WPARAM);


 
WebErr ©   (2004-05-24 18:11) [3]

Под PChar память, надеюсь выделена?


 
TUser   (2004-05-24 18:19) [4]

PInf. Это я описался. Взаимодействие межпроцессное. За CopyData спасибо.


 
TUser ©   (2004-05-25 07:06) [5]

Кстати, заметил такую штуку. Если отправить WM_COPYDATA с PChar"ом не только тому окну, которому оно предназначено, но  и всем остальным, то вываливается "Страница недоступна в автономном режиме. Подключиться?" Если щелкнуть "Да", то все равно ничего не откроется. К чему бы эксплореру так реагировать на WM_COPYDATA?


 
Digitman ©   (2004-05-25 15:50) [6]


> К чему бы эксплореру так реагировать на WM_COPYDATA?

любопытно, что ты пытаешься "впарить" Эксплореру в данных, посылаемых с пом. WM_COPYDATA ..


 
VMcL ©   (2004-05-25 15:56) [7]

>>TUser ©  (25.05.04 07:06) [5]

Потому что экплорер не глупей твоей программы будет :) Ему тоже удобно WM_COPYDATA пользоваться, так же как и многим другим программам. Так что WM_COPYDATA следует посылать не бродкастом, а конкретному окну или нескольким окнам.


 
WebErr ©   (2004-05-25 18:30) [8]


> Ткните меня носом в FAQ

С удовольствием! :))))



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
3-1084809413
юрок
2004-05-17 19:56
2004.06.06
Привязка 2 картинок к дбгриду


9-1061216251
ProvAd
2003-08-18 18:17
2004.06.06
Скриптовый движок


14-1084966082
ORMADA
2004-05-19 15:28
2004.06.06
Разделение прав доступа


3-1084772982
ss300
2004-05-17 09:49
2004.06.06
Странная Ошибка при вызове метода Post;


3-1084512067
evgen
2004-05-14 09:21
2004.06.06
Как зделать так что в выподающем списке сохронялись старые данные