Текущий архив: 2003.05.12;
Скачать: CL | DM;
Вниз
Обмен между приложениями Найти похожие ветки
← →
Shuric (2003-04-29 17:50) [0]Приветик всем. Подскажите или растолкуйте как из одного приложения в другое передать на обработку структурку типа:
type
PInRecord = ^TInRecord;
TInRecord = record
Date: TDateTime;
Int: Integer;
Handle: HWND;
end;
По своей тупости не учел, что после посылки от одного приложения
var
AMessage: TMessage;
begin
AInRecord^.Date := StrToDate(spSkinDateEdit1.Text);
AInRecord^.Int := StrToInt(spSkinEdit1.Text);
AInRecord^.Handle := Handle;
with AMessage do begin
WParam := Integer(AInRecord);
PostMessage(ClientOracle.Handle, WM_USERNEEDDATA, WParam, LParam);
end;
end;
В другом приложении что-то «с памятью моей...»
procedure TClientOracle.WMUserNeedData(var Message: TMessage);
var
AInRecord: PInRecord;
ASendRecord: PSendRecord;
begin
AInRecord := Pointer(Message.WParam);
New(ASendRecord);
ASendRecord^.Date := AInRecord^.Date; - access
Как корректно реализовать. Спасибо и с наступающими.
← →
Skier © (2003-04-29 17:53) [1]в Windows для этого есть спец.мед. сообщение - WM_COPYDATA :)
← →
Digitman © (2003-04-29 17:54) [2]см. SendMessage(..., WM_COPYDATA, ...)
← →
handra © (2003-04-29 17:55) [3]посылай жва сообщения, в первом передавай младшую и старшую часть даты, во втором - остальной, т.е. используй передачу по значению, хотя это подход от неумения и незнания
← →
Bug (2003-04-29 18:04) [4]могу послать на мыло пример из книги Teixeira и Pacheco.
← →
Shuric © (2003-04-29 18:46) [5]>Bug
Давай...
← →
Bug (2003-04-29 19:25) [6]послал на vniie.atrofimov@rambler.ru.
← →
Bug (2003-04-29 19:28) [7]а лучше это сделать используя COM
Страницы: 1 вся ветка
Текущий архив: 2003.05.12;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.01 c