Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Использование sendmessage   Найти похожие ветки 

 
Vilux ©   (2004-03-15 19:19) [0]

Здравствуйте, мне надо из одной программы передать данные в другую программу посредством команды sendmessage. Например надо передать строку, как мне это реализовать? Как организовать прием данных в одной программе и отсылку в другой?


 
Vilux ©   (2004-03-15 19:19) [0]

Здравствуйте, мне надо из одной программы передать данные в другую программу посредством команды sendmessage. Например надо передать строку, как мне это реализовать? Как организовать прием данных в одной программе и отсылку в другой?


 
Гаврила   (2004-03-15 19:28) [1]

для начала нужно найти handle окна-примемника сообщения
если строку передать, но наверно надо посылать WM_COPYDATA


 
Гаврила   (2004-03-15 19:28) [1]

для начала нужно найти handle окна-примемника сообщения
если строку передать, но наверно надо посылать WM_COPYDATA


 
Vilux ©   (2004-03-15 19:48) [2]

Спасибо, по поиску команды WM_COPYDATA нашел работающий пример

Как передать строку другому приложению  
-----------------------------------------------------------------
получатель:

procedure ReceiveMessage (var Msg: TMessage);
message WM_COPYDATA;
...
procedure TFormReceive.ReceiveMessage;
var
 pcd: PCopyDataStruct;
begin
 pcd := PCopyDataStruct(Msg.LParam);
 Caption := PChar(pcd.lpData);
end;

отправитель:

procedure TFormXXX.Button1Click(Sender: TObject);
var
 cd: TCopyDataStruct;
begin
 cd.cbData := Length(Edit1.Text) + 1;
 cd.lpData := PChar(Edit1.Text);
 SendMessage(FindWindow("TFormReceive", nil), WM_COPYDATA, 0, LParam(@cd));
end;


 
Vilux ©   (2004-03-15 19:48) [2]

Спасибо, по поиску команды WM_COPYDATA нашел работающий пример

Как передать строку другому приложению  
-----------------------------------------------------------------
получатель:

procedure ReceiveMessage (var Msg: TMessage);
message WM_COPYDATA;
...
procedure TFormReceive.ReceiveMessage;
var
 pcd: PCopyDataStruct;
begin
 pcd := PCopyDataStruct(Msg.LParam);
 Caption := PChar(pcd.lpData);
end;

отправитель:

procedure TFormXXX.Button1Click(Sender: TObject);
var
 cd: TCopyDataStruct;
begin
 cd.cbData := Length(Edit1.Text) + 1;
 cd.lpData := PChar(Edit1.Text);
 SendMessage(FindWindow("TFormReceive", nil), WM_COPYDATA, 0, LParam(@cd));
end;


 
Юрий Зотов ©   (2004-03-15 19:55) [3]

Vilux ©   (15.03.04 19:48) [2]

Если передаете не более 2х4 байт и это не адреса, то можно использовать любое сообщение. Если нет - только WM_COPYDATA.


 
Юрий Зотов ©   (2004-03-15 19:55) [3]

Vilux ©   (15.03.04 19:48) [2]

Если передаете не более 2х4 байт и это не адреса, то можно использовать любое сообщение. Если нет - только WM_COPYDATA.



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

Форум: "WinAPI";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.03 c
1-1082525196
[BAD]Angel
2004-04-21 09:26
2004.05.09
как узнать количество файлов в папке?


1-1082719243
hawkins
2004-04-23 15:20
2004.05.09
как програмно присвоить обработчик события OnMouseMove у ListBox


8-1075957443
Настенька
2004-02-05 08:04
2004.05.09
mp3


3-1081505880
ev
2004-04-09 14:18
2004.05.09
Как сохранить БД через SaveDialog в формате Word и Excel?


1-1082612519
Alexey
2004-04-22 09:41
2004.05.09
расширения файла





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский