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

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

Скопировать данные с помощью API функций [D7, WinXP]


Страницы:   1 2 3

Krozzz ©   (2009-02-13 19:00:00) 

Есть две программы. В каждой по компоненту Edit. Подскажите, как поместить информацию из Edit"а одной программы в Edit другой (и если вместо Edit будет Label)?


Krozzz   (2009-02-14 21:46:00) [41]

Спасибо. Нашел в хелпе delphi api пример как передать строку с помощью WM_COPYDATA:
приложение получатель:
...
TMyForm1 = class(TForm)
 private
   ...
   procedure ReceiveMessage (var Msg: TMessage); message WM_COPYDATA;
   ...
end;
...

implementation

...

procedure TMyForm.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('TMyForm1', nil),
       WM_COPYDATA,  0, LParam(@cd));
end;

Правда тут кнопка в программе-отправителе. Если не в тягость, как сделать
так, чтобы кнопка не посылала, а получала строку?


Сергей М.   (2009-02-14 20:21:00) [42]

http://www.delphisources.ru/pages/faq/base/wm_cd_link.html


Сергей М.   (2009-02-14 20:18:00) [43]

Тогда см., например, сообщение WM_COPYDATA


Krozzz   (2009-02-14 19:15:00) [44]


> исходники доступны

доступны


Сергей М.   (2009-02-14 19:14:00) [45]

Ответь на вопрос ..


Krozzz   (2009-02-14 18:56:00) [46]


> И обе твоей разработки, т.е. исходники доступны ?

Программы примитивные:
в первой только компонент Edit1, во второй Edit1 и Button1.
При нажатии на Button1 данные из Edit1 1й программы должны скопироваться в Edit1 2й.


Сергей М.   (2009-02-14 17:29:00) [47]

И обе твоейразработки, т.е. исходники доступны ?


Krozzz   (2009-02-14 09:05:00) [48]


> Обе программы дельфийские ?

Да


Германн   (2009-02-14 00:28:00) [49]


> Скопировать данные с помощью API функций

Это не на форумах надо спрашивать. Это надо изучать по книгам, причём достаточно серьёзным. Если речь идёт про WinAPI функции, то нужно абсолютно точно понимать, что никаких "компонент" они не знали, не знают и знать не хотят. Они знают только "окна" (windows).

P.S. А дельфийский компонент TLabel, к примеру, никакого окна не имеет.


Сергей М.   (2009-02-13 21:41:00) [50]

Обе программы дельфийские ?


Страницы:   1 2 3

Наверх

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