Скачиваний:
34
Добавлен:
01.05.2014
Размер:
22.17 Кб
Скачать
я26.5. ЋЎ¬Ґ­ ¤ ­­л¬Ё зҐаҐ§ Clipboard

Clipboard - нв® б।бвў® ®Ў¬Ґ­  ¤ ­­л¬Ё, ЇаҐ¤бв ў«по饥
б®Ў®© б®ў®ЄгЇ­®бвм а §¤Ґ«пҐ¬®© ®Ў« бвЁ Ї ¬пвЁ Ё ­ Ў®а  дг­ЄжЁ©,
®Ўб«г¦Ёў ойЁе нвг ®Ў« бвм.
’а ¤ЁжЁ®­­л¬ бЇ®б®Ў®¬ ЁбЇ®«м§®ў ­Ёп Clipboard пў«пҐвбп ®Ў¬Ґ­
¤ ­­л¬Ё ЇаЁ гз бвЁЁ Ї®«м§®ў вҐ«п.
Ћ¤­ Є® Ё ¤агЈЁҐ, Ў®«ҐҐ а §ўЁвлҐ б।бвў  ®Ў¬Ґ­  ¤ ­­л¬Ё,
в ЄЁҐ Є Є DDE Ё OLE, ЁбЇ®«м§гов Є®­жҐЇжЁЁ Clipboard ў бў®Ґ©
®б­®ўҐ.
‚ ¦­Ґ©иҐ© Є®­жҐЇжЁҐ© Clipboard пў«пҐвбп Є®­жҐЇжЁп д®а¬ в 
¤ ­­ле.
Ёа®Є®Ґ а бЇа®бва ­Ґ­ЁҐ Clipboard Ё Ї®«гзЁ«  Ё§-§ 
д ЄвЁзҐбЄ®© бв ­¤ авЁ§ жЁЁ ап¤  д®а¬ в®ў ¤ ­­ле, ЁбЇ®«м§гҐ¬ле ЇаЁ
®Ў¬Ґ­Ґ ¬Ґ¦¤г ЇаЁ«®¦Ґ­Ёп¬Ё.
ќв  бв ­¤ авЁ§ жЁп Ї®§ў®«Ё«  б­пвм б Ї®«м§®ў вҐ«п Їа®Ў«Ґ¬л
ЇаҐ®Ўа §®ў ­Ёп ¤ ­­ле ЇаЁ ЇҐаҐ¤ зҐ Ёе Ё§ ®¤­®Ј® ЇаЁ«®¦Ґ­Ёп ў
¤агЈ®Ґ, зв® Ё бЇ®б®Ўбвў®ў «® иЁа®Є®¬г а бЇа®бва ­Ґ­Ёо Clipboard.
‘।  б ¬  ЎҐаҐв ­  бҐЎп Їа®Ў«Ґ¬л ЇаҐ®Ўа §®ў ­Ёп ¤ ­­ле ­  ®б­®ўҐ
ап¤  бв ­¤ ав­ле д®а¬ в®ў.

‘в ­¤ авЁ§ жЁп д®а¬ в®ў, ®¤­ Є®, ­Ґ ®Ја ­ЁзЁў Ґв ў®§¬®¦­®бвЁ
Ёе а биЁаҐ­Ёп.
ЏаЁ«®¦Ґ­ЁҐ ¬®¦Ґв ᮧ¤ вм ­®ўл© д®а¬ в, ®в«Ёз­л© ®в
бв ­¤ ав­ле. …Ј® в®«мЄ® ­Ґ®Ўе®¤Ё¬® § аҐЈЁбваЁа®ў вм ў б।Ґ б
Ї®¬®ймо дг­ЄжЁЁ

я3RegisterClipboardFormat,

ЇҐаҐ¤ ў нв®© дг­ЄжЁЁ Ё¬п д®а¬ в .

”г­ЄжЁп ў®§ўа й Ґв г­ЁЄ «м­л© Ё¤Ґ­вЁдЁЄ в®а д®а¬ в . …б«Ё
¤агЈЁҐ ЇаЁ«®¦Ґ­Ёп ўл§®ўгв нвг дг­ЄжЁо, ЇҐаҐ¤ ў Ґ© нв® ¦Ґ Ё¬п
д®а¬ в , в® дг­ЄжЁп ў®§ўа вЁв Ё¬ 㦥 ᮧ¤ ­­л© Ё¤Ґ­вЁдЁЄ в®а
д®а¬ в . ’ ЄЁ¬ ®Ўа §®¬, ўбҐ ЇаЁ«®¦Ґ­Ёп Ўг¤гв Ї®«м§®ў вмбп ®¤­Ё¬
Ё ⥬ ¦Ґ Ё¤Ґ­вЁдЁЄ в®а®¬ ¤«п ®Ў¬Ґ­  ¤ ­­л¬Ё, ЇаҐ¤бв ў«Ґ­­л¬Ё ў
н⮬ д®а¬ вҐ.

‘в ­¤ ав­лҐ д®а¬ вл ¤ ­­ле ®Ў®§­ з овбп Є®­бв ­в ¬Ё,
Ё¬ҐойЁ¬Ё бЁ¬ў®«ЁзҐбЄЁҐ Ё¬Ґ­ . ЏаЁўҐ¤Ґ¬ ў Є зҐб⢥ ЇаЁ¬Ґа  Ї аг
в ЄЁе д®а¬ в®ў:
cf_Text - ASCIIZ бва®Є ;
cf_BitMap - ®¤Ё­ Ё§ д®а¬ в®ў Ја дЁзҐбЄ®Ј® Ё§®Ўа ¦Ґ­Ёп.
‘гйҐбвўгҐв ҐйҐ ­ҐбЄ®«мЄ® (®Є®«® 6) бв ­¤ ав­ле д®а¬ в®ў
¤ ­­ле, Ї®¤¤Ґа¦Ёў Ґ¬ле Clipboard.

ЌЁ¦Ґ ¬л а бᬮваЁ¬ Ї®а冷Є ®Ў¬Ґ­  ¤ ­­л¬Ё зҐаҐ§ Clipboard б
в®зЄЁ §аҐ­Ёп Їа®Ја ¬¬Ёбв ,   ­Ґ Ї®«м§®ў вҐ«п.

я_ЏҐаҐ¤ з  ¤ ­­ле ў Clipboard

ЏҐаҐ¤ з  ¤ ­­ле ў Clipboard ўЄ«оз Ґв ў ᥡп ап¤ нв Ї®ў.
1. Џ®¤Ј®в®ўЄ  ¤ ­­ле ¤«п ЇҐаҐ¤ зЁ ў Clipboard;
2. ЋвЄалвЁҐ Clipboard;
3. ЋзЁбвЄ  Clipboard;
4. Џ®бл«Є  ¤ ­­ле ў Clipboard;
5. ‡ ЄалвЁҐ Clipboard.

я11. Џ®¤Ј®в®ўЄ  ¤ ­­ле ¤«п ЇҐаҐ¤ зЁ ў Clipboard;

Џ®бл«Єг ¤ ­­ле а бᬮваЁ¬ ­  ЇаЁ¬ҐаҐ ЇҐаҐ¤ зЁ ў Clipboard
ASCIIZ - бва®ЄЁ.

1) ‚뤥«пҐ¬ Ў«®Є ¤Ё­ ¬ЁзҐбЄ®© Ї ¬пвЁ:

GHandle := GlobalAlloc(gmem_Movable, StrLen(P) + 1);

Ј¤Ґ GHandle : THandle - ббл«Є  ­  Ў«®Є ¤Ё­ ¬ЁзҐбЄ®© Ї ¬пвЁ;
P : PChar - гЄ § вҐ«м ­  ЇҐаҐ¤ ў Ґ¬го бва®Єг.

2) ”ЁЄбЁа㥬 Ў«®Є ®в ЇҐаҐ¬ҐйҐ­Ё© ­  ўаҐ¬п ЇҐаҐ¤ зЁ ў ­ҐЈ®
¤ ­­ле Ё ®¤­®ўаҐ¬Ґ­­® Ї®«гз Ґ¬ гЄ § вҐ«м ­  Ў«®Є:

GPtr := GlobalLock(GHandle);

Ј¤Ґ GPtr : PChar - гЄ § вҐ«м ­  Ў«®Є.

3) Љ®ЇЁа㥬 бва®Єг ў Ї ¬пвм:

StrCopy(GPtr, P).

4) ђ §аҐи Ґ¬ ЇҐаҐ¬ҐйҐ­ЁҐ Ў«®Є  Ї ¬пвЁ:

GlobalUnlock(GHandle).

я12.я0 я1ЋвЄалвЁҐ Clipboard

ЋвЄалвЁҐ Clipboard ўлЇ®«­пҐвбп ўл§®ў®¬ дг­ЄжЁЁ

OpenClipboard,

Є®в®а п ў®§ўа й Ґв True, Ґб«Ё Clipboard ­Ґ ЁбЇ®«м§гҐвбп ¤агЈЁ¬
ЇаЁ«®¦Ґ­ЁҐ¬. ‚ н⮬ б«гз Ґ ў®§¬®¦­л Ї®б«Ґ¤гойЁҐ ¤Ґ©бвўЁп б
Clipboard.

я13.я0 я1ЋзЁбвЄ  Clipboard

ЋзЁбвЄ  Clipboard ўлЇ®«­пҐвбп ўл§®ў®¬ дг­ЄжЁЁ

EmptyClipboard,

ЇҐаҐ¤ § бл«Є®© вг¤  ­®ўле ¤ ­­ле.

я14. Џ®бл«Є  ¤ ­­ле ў Clipboard

Џ®бл«Є  ¤ ­­ле ў Clipboard § Є«оз Ґвбп ў ЇҐаҐ¤ зҐ Clipboard
ббл«ЄЁ ­  Ў«®Є ¤ ­­ле б гЄ § ­ЁҐ¬ д®а¬ в  нвЁе ¤ ­­ле. ќвЁ
¤Ґ©бвўЁп ®бгйҐбвў«повбп б Ї®¬®ймо дг­ЄжЁЁ:

SetClipboardData(cf_Text, GHandle).

Џ®б«Ґ ўл§®ў  нв®© дг­ЄжЁЁ Clipboard ­ зЁ­ Ґв ў« ¤Ґвм
¤ ­­л¬Ё.

я15. ‡ ЄалвЁҐ Clipboard

‡ ЄалвЁҐ Clipboard ўлЇ®«­пҐвбп ўл§®ў®¬ дг­ЄжЁЁ

CloseClipboard,

Ї®б«Ґ Є®в®а®Ј® Clipboard бв ­®ўЁвбп ¤®бвгЇ­л¬ ¤агЈЁ¬ ЇаЁ«®¦Ґ­Ёп¬.

я_ЏаЁҐ¬ ¤ ­­ле Ё§ Clipboard

ЏаЁҐ¬ ¤ ­­ле Ё§ Clipboard ўЄ«оз Ґв ў ᥡп б«Ґ¤гойЁҐ нв Їл:
1. ЋвЄалвЁҐ Clipboard;
2. Џа®ўҐаЄ  ­ «ЁзЁп вॡ㥬®Ј® д®а¬ в  ¤ ­­ле ў Clipboard;
3. —⥭ЁҐ ¤ ­­ле Ё§ Clipboard;
4. ‡ ЄалвЁҐ Clipboard.

я11. ЋвЄалвЁҐ Clipboard

ЋвЄалвЁҐ Clipboard ўлЇ®«­пҐвбп  ­ «®ЈЁз­® ЇаҐ¤л¤г饬г
б«гз о ўл§®ў®¬ дг­ЄжЁЁ:
OpenClipboard.

я12. Џа®ўҐаЄ  ­ «ЁзЁп вॡ㥬®Ј® д®а¬ в  ¤ ­­ле ў Clipboard

Џа®ўҐаЄ  ­ «ЁзЁп вॡ㥬®Ј® д®а¬ в  ¤ ­­ле ўлЇ®«­пҐвбп
ўл§®ў®¬ дг­ЄжЁЁ:

IsClipboardFormatAvailable(cf_Text),

Є®в®а п ў®§ўа й Ґв True, Ґб«Ё ¤ ­­лҐ § Їа иЁў Ґ¬®Ј® д®а¬ в 
ЇаЁбгвбвўгов.

я13. —⥭ЁҐ ¤ ­­ле Ё§ Clipboard

—⥭ЁҐ ¤ ­­ле, ў б«гз Ґ гбЇҐи­®Ј® ўлЇ®«­Ґ­Ёп ўбҐе ЇаҐ¤л¤гйЁе
®ЇҐа жЁ©, ўлЇ®«­пҐвбп §  ­ҐбЄ®«мЄ® и Ј®ў:

1) Џ®«г祭ЁҐ ббл«ЄЁ ­  Ў«®Є Ї ¬пвЁ, ᮤҐа¦ йЁ© ¤ ­­лҐ
вॡ㥬®Ј® д®а¬ в :

GHandle := GetClipboardData(cf_Text);

2) Џ®«г祭ЁҐ  ¤аҐб  ¤ ­­®Ј® Ў«®Є  Ї ¬пвЁ Ё дЁЄбЁа®ў ­ЁҐ ҐЈ®
®в ў®§¬®¦­ле ЇҐаҐ¬ҐйҐ­Ё© ­  ўаҐ¬п бзЁвлў ­Ёп ¤ ­­ле:

GPtr := GlobalLock(GHandle);

3) ‚뤥«Ґ­ЁҐ «®Є «м­®© Ї ¬пвЁ ¤«п з⥭Ёп ў ­ҐҐ Ё­вҐаҐбгойЁе
¤ ­­ле:
GetMem(P, StrLen(GPtr) + 1);

4) Љ®ЇЁа®ў ­ЁҐ ¤ ­­ле Ё§ Ј«®Ў «м­®© Ї ¬пвЁ ў «®Є «м­го:

StrCopy(P, GPtr);

5) ђ §аҐиҐ­ЁҐ ЇҐаҐ¬ҐйҐ­Ёп Ј«®Ў «м­®Ј® Ў«®Є  Ї ¬пвЁ:

GlobalUnlock(GHandle).

я14. ‡ ЄалвЁҐ Clipboard

‡ ЄалвЁҐ Clipboard ў б«гз Ґ ЇаЁҐ¬  ¤ ­­ле ўлЇ®«­пҐвбп
 ­ «®ЈЁз­® § ЄалвЁо ў б«гз Ґ ЇҐаҐ¤ зЁ ¤ ­­ле: CloseClipboard.

Љ Є ўЁ¤­® Ё§ ЇаЁўҐ¤Ґ­­®Ј® ®ЇЁб ­Ёп, ¤«п Їа®Ја ¬¬­®©
ॠ«Ё§ жЁЁ ®Ў¬Ґ­  ¤ ­­л¬Ё зҐаҐ§ Clipboard вॡгҐвбп ўлЇ®«­Ґ­Ёп
¤®бв в®з­®Ј® Ў®«ми®Ј® Є®«ЁзҐбвў  ¤Ґ©бвўЁ©. ЏаЁ н⮬, ॠ«Ё§ жЁп
®Ў¬Ґ­  ¤«п ¤агЈЁе, Ў®«ҐҐ б«®¦­ле д®а¬ в®ў, в ЄЁе, ­ ЇаЁ¬Ґа, Є Є
"Ја дЁзҐбЄ®Ґ Ё§®Ўа ¦Ґ­ЁҐ", бв ­®ўЁвбп ҐйҐ Ў®«ҐҐ б«®¦­®©.
‘®ўаҐ¬Ґ­­лҐ баҐ¤л Їа®ҐЄвЁа®ў ­Ёп Ї®§ў®«пов бгйҐб⢥­­®
®Ў«ҐЈзЁвм а Ў®вг Їа®Ја ¬¬Ёбв  Ї® ॠ«Ё§ жЁЁ ®Ў¬Ґ­  ¤ ­­л¬Ё.
Џ®б¬®ваЁ¬, Є Є ¬®¦­® ॠ«Ё§®ў вм ®Ў¬Ґ­ ¤ ­­л¬Ё зҐаҐ§
Clipboard ў б।Ґ Їа®ҐЄвЁа®ў ­Ёп Delphi.

‘।  Їа®ҐЄвЁа®ў ­Ёп Delphi ЇаҐ¤®бв ў«пҐв ®ЎкҐЄв TClipboard,
Є®в®ал© ўЄ«оз Ґв ў бҐЎп ўбҐ ­Ґ®Ўе®¤Ё¬лҐ ¤Ґ©бвўЁп ¤«п гЇа ў«Ґ­Ёп
Clipboard.
‚Є«о祭ЁҐ ¬®¤г«п Clipbrd ў б®бв ў Їа®ҐЄв ,  ўв®¬ вЁзҐбЄЁ
ᮧ¤ Ґв, ®вЄалў Ґв Ё ¤Ґ« Ґв ¤®бвгЇ­л¬ нЄ§Ґ¬Ї«па Clipboard. ЏаЁ
н⮬, Є®¬Ї®­Ґ­вл TEdit Ё TMemo, ®ЎҐбЇҐзЁў ойЁҐ а Ў®вг б
⥪бв®ўл¬Ё бва®Є ¬Ё,   в Є¦Ґ Є®¬Ї®­Ґ­в TImage, ®ЎҐбЇҐзЁў ойЁ©
а Ў®вг б Ја дЁзҐбЄЁ¬Ё ®Ўа § ¬Ё, Ї®«гз ов ў®§¬®¦­®бвм
ЁбЇ®«м§®ў ­Ёп бў®Ёе ¬Ґв®¤®ў а Ў®вл б Clipboard.

’ Є, ­ ЇаЁ¬Ґа, бЄ®ЇЁа®ў вм Ё­д®а¬ жЁо ў Clipboard, Ё§
Є®¬Ї®­Ґ­в  Memo вЁЇ  TMemo, ¬®¦­® б«Ґ¤гойЁ¬ ®Ўа §®¬:
Memo.SelectAll; {ўл¤Ґ«Ёвм ўҐбм ⥪бв}
Memo.CopyToClipboard; {бЄ®ЇЁа®ў вм ўл¤Ґ«Ґ­­л© ⥪бв}

ў®§¬®¦Ґ­ ¤агЈ®© ¬Ґв®¤: Clipboard.AsText := Memo.Text;

‚л१ вм ⥪бв ¬®¦­® б«Ґ¤гойЁ¬ ®Ўа §®¬:
Memo.SelectAll; {ўл¤Ґ«Ёвм ўҐбм ⥪бв}
Memo.CutToClipboard; {ўл१ вм ўл¤Ґ«Ґ­­л© ⥪бв}

‘Є®ЇЁа®ў вм ⥪бв Ё§ Clipboard ¬®¦­® б«Ґ¤гойЁ¬ ®Ўа §®¬:

Memo.PasteFromClipboard; Ё«Ё: Memo.Text := Clipboard.AsText;

ЏҐаҐ¤ бзЁвлў ­ЁҐ¬ ¤ ­­ле Ё§ Clipboard 楫Ґб®®Ўа §­®
Їа®ўҐаЁвм, Ґбвм «Ё ў Clipboard ¤ ­­лҐ вॡ㥬®Ј® вЁЇ . ќв® ¬®¦­®
ᤥ« вм б Ї®¬®ймо ўл§®ў  ¬Ґв®¤  ®ЎкҐЄв  Clipboard:

Clipboard.HasFormat(cf_Text),

Є®в®ал© ўҐа­Ґв True, Ґб«Ё ¤ ­­лҐ ў д®а¬ вҐ cf_Text Ґбвм ў
Clipboard.

„«п ®Ў¬Ґ­  Ја дЁзҐбЄ®© Ё­д®а¬ жЁҐ© б«Ґ¤гҐв ЁбЇ®«м§®ў вм
бЇҐжЁ «м­® ЇаҐ¤­ §­ зҐ­­л© ¤«п нв®Ј® ¬Ґв®¤ Assign, ЇаЁ¬Ґал
ЁбЇ®«м§®ў ­Ёп Є®в®а®Ј® ЇаЁўҐ¤Ґ­л ­Ё¦Ґ.

Љ®ЇЁа®ў ­ЁҐ Ја дЁзҐбЄЁе ¤ ­­ле (ў д®а¬ вҐ cf_BitMap)
бў®©бвў  Picture Є®¬Ї®­Ґ­в  Image вЁЇ  TImage ў Clipboard:

‘lipboard.Assign(Image.Picture).

Љ®ЇЁа®ў ­ЁҐ Ја дЁзҐбЄЁе ¤ ­­ле Ё§ Clipboard ў Є®¬Ї®­Ґ­в
Image:
If Clipboard.HasFormat(cf_BitMap) Then
Image.Picture.Assign(Clipboard);

Љ Є ўЁ¤­® Ё§ ЇаЁўҐ¤Ґ­­ле ЇаЁ¬Ґа®ў, ᮢ६Ґ­­ п б। 
Їа®ҐЄвЁа®ў ­Ёп Їа®Ја ¬¬ ЎҐаҐв ­  бҐЎп Ў®«м讥 Є®«ЁзҐбвў® Їа®Ў«Ґ¬,
Ё¬ҐойЁе ¬Ґбв® ЇаЁ ®аЈ ­Ё§ жЁЁ ®Ў¬Ґ­  ¤ ­­л¬Ё а §«Ёз­ле д®а¬ в®ў
зҐаҐ§ Clipboard.

я26.6. ЋЎ¬Ґ­ ¤ ­­л¬Ё Ї® вҐе­®«®ЈЁЁ DDE

ЋЎ¬Ґ­ ¤ ­­л¬Ё зҐаҐ§ Clipboard ўлЇ®«­пҐвбп, Є Є Їа ўЁ«®, ЇаЁ
­ҐЇ®б।б⢥­­®¬ гз бвЁЁ Ї®«м§®ў вҐ«п.
‚ ⮬ б«гз Ґ, Є®Ј¤  вॡгҐвбп ­ҐЇ®б।б⢥­­л© ®Ў¬Ґ­ ¤ ­­л¬Ё
¬Ґ¦¤г ЇаЁ«®¦Ґ­Ёп¬Ё, ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­ Їа®в®Є®« ®Ў¬Ґ­  DDE.
DDE - нв® ўЁ¤ (Ё«Ё Їа®в®Є®«) ў§ Ё¬®¤Ґ©бвўЁп ¬Ґ¦¤г
ЇаЁ«®¦Ґ­Ёп¬Ё, Є®в®ал© ЁбЇ®«м§гҐв а §¤Ґ«пҐ¬го Ї ¬пвм ¤«п ®Ў¬Ґ­ 
¤ ­­л¬Ё ¬Ґ¦¤г ­Ё¬Ё.
’Ґе­®«®ЈЁп DDE ­Ґ Ї®«гз Ґв иЁа®Є®Ј® а бЇа®бва ­Ґ­Ёп Ё§-§ 
б«®¦­®б⨠ॠ«Ё§ жЁЁ, ­® § ­Ё¬ Ґв Їа®¬Ґ¦гв®з­®Ґ ¬Ґбв® ¬Ґ¦¤г
вҐе­®«®ЈЁҐ© Clipboard Ё вҐе­®«®ЈЁҐ© OLE, Є®в®а п ⮦Ґ з१ўлз ©­®
б«®¦­ , ­® а §ўЁў Ґвбп Ї®¤ ¬®й­л¬ ­ Ї®а®¬ дЁа¬л-Їа®Ё§ў®¤ЁвҐ«п
б ¬ле а бЇа®бва ­Ґ­­ле Ћ‘.

’Ґе­®«®ЈЁп DDE Ї®«­®бвмо ўЇЁблў Ґвбп ў вҐе­®«®ЈЁо
Љ«ЁҐ­в-‘ҐаўҐа, н«Ґ¬Ґ­вл Є®в®а®© Ўл«Ё а бᬮв७л а ­ҐҐ. ’.Ґ.
®Ў¬Ґ­ ¤ ­­л¬Ё Ї® Їа®в®Є®«г DDE Їа®Ёб室Ёв ¬Ґ¦¤г ¤ўг¬п
ЇаЁ«®¦Ґ­Ёп¬Ё, ®¤­® Ё§ Є®в®але пў«пҐвбп Є«ЁҐ­в®¬,   ¤агЈ®Ґ
бҐаўҐа®¬. ‘ҐаўҐа § Јаг¦ Ґвбп Ё ¦¤Ґв § Їа®б®ў ­  ®Ўб«г¦Ёў ­ЁҐ ®в
Є«ЁҐ­в . Љ«ЁҐ­в Ї®бл« Ґв бҐаўҐаг § Їа®б ­  Ї®«г祭ЁҐ ¤ ­­ле Ё«Ё
ўлЇ®«­Ґ­ЁҐ а Ў®вл. ‘ҐаўҐа, Ї®«гзЁў § Їа®б, ўлЇ®«­пҐв ¤Ґ©бвўЁп Ё
Ї®бл« Ґв ®вўҐв.
‘ҐаўҐа ¬®¦Ґв Ё¬Ґвм ¬­®¦Ґбвў® Є«ЁҐ­в®ў ў ®¤­® Ё в® ¦Ґ ўаҐ¬п Ё
Є«ЁҐ­в ¬®¦Ґв § Їа иЁў вм ¤ ­­лҐ ®в ¬­®¦Ґбвў  бҐаўҐа®ў. Ѓ®«ҐҐ
в®Ј®, ЇаЁ«®¦Ґ­ЁҐ ¬®¦Ґв Ўлвм ®¤­®ўаҐ¬Ґ­­® Ё Є«ЁҐ­в®¬ Ё бҐаўҐа®¬.

’Ґе­®«®ЈЁп DDE Ё§­ з «м­® ᮧ¤ ў « бм ¤«п ®аЈ ­Ё§ жЁЁ ®Ў¬Ґ­ 
¤ ­­л¬Ё ¬Ґ¦¤г ЇаЁ«®¦Ґ­Ёп¬Ё, ўлЇ®«­пойЁ¬Ёбп ­  ®¤­®© ¬ иЁ­Ґ, ­®
бгйҐбвўгҐв Ё а §ўЁвЁҐ нв®© вҐе­®«®ЈЁЁ ¤«п ЇаЁ«®¦Ґ­Ё©,
ўлЇ®«­пойЁебп ­  а §­ле ¬ иЁ­ е, ­ §лў Ґ¬®Ґ NetDDE.

’Ґе­®«®ЈЁп DDE § а®¤Ё« бм ў ­Ґ¤а е ®ЇҐа жЁ®­­ле б।,
гЇа ў«пҐ¬ле б®ЎлвЁп¬Ё.
ЋЇҐа жЁ®­­ п б। , гЇа ў«пҐ¬ п б®ЎлвЁп¬Ё, ®вб«Ґ¦Ёў Ґв ўбҐ
ў®§¬®¦­лҐ б®ЎлвЁп, Їа®Ёб室пйЁҐ ў бЁб⥬Ґ, ­ ЇаЁ¬Ґа, ­ ¦ вЁп
Є« ўЁи, ЇҐаҐ¬ҐйҐ­Ёп ¬лиЁ, бЁЈ­ «л ®в ў­Ґи­Ґ© б।л, ЇаЁҐ¬
б®®ЎйҐ­Ё© ®в ЇаЁ«®¦Ґ­Ё©.
ЋЎа Ў влў п нвЁ б®ЎлвЁп, ®ЇҐа жЁ®­­ п б।  д®а¬ЁагҐв
б®®ЎйҐ­Ёп ЇаЁ«®¦Ґ­Ёп¬.
ЏаЁ«®¦Ґ­ЁҐ, Є®в®а®Ґ ўлЇ®«­пҐвбп ў б।Ґ, гЇа ў«пҐ¬®©
б®ЎлвЁп¬Ё, ­ е®¤Ёвбп ў ЎҐбЄ®­Ґз­®¬ жЁЄ«Ґ Ё Їа®ўҐапҐв ­ «ЁзЁҐ
б®®ЎйҐ­Ё© Ґ¬г ®в ®ЇҐа жЁ®­­®© б।л. ‚ ᮮ⢥вбвўЁҐ б е а ЄвҐа®¬
ЇаЁ­Ё¬ Ґ¬ле б®®ЎйҐ­Ё© ЇаЁ«®¦Ґ­ЁҐ ўлЇ®«­пҐв ваҐЎгҐ¬лҐ ¤Ґ©бвўЁп Ё
б­®ў  Ї®бл« Ґв б®®ЎйҐ­Ёп б।Ґ.

‘ гзҐв®¬ гЄ § ­­®© ®б®ЎҐ­­®бвЁ, ў а §ўЁвЁЁ вҐе­®«®ЈЁЁ DDE
¬®¦­® ўл¤Ґ«Ёвм ваЁ нв Ї .

1) ЏҐаўл© нв Ї бгйҐбвў®ў ­Ёп DDE, Є®Ј¤  DDE ॠ«Ё§®ўлў «бп
­  ®б­®ўҐ ЇаאַЈ® ®Ў¬Ґ­  бЁб⥬­л¬Ё б®®ЎйҐ­Ёп¬Ё ¬Ґ¦¤г
ЇаЁ«®¦Ґ­Ёп¬Ё.
„«п Ї®бл«ЄЁ б®®ЎйҐ­Ё© ¬®Јгв Ўлвм ЁбЇ®«м§®ў ­л бЁб⥬­лҐ
дг­ЄжЁЁ SendMessage (бЁ­еа®­­ п) Ё PostMessage ( бЁ­еа®­­ п).
„«п DDE ўл¤Ґ«Ґ­  бЇҐжЁ «м­ п ЈагЇЇ  б®®ЎйҐ­Ё©,   Ё¬Ґ­­®:

wm_DDE_Initiate - €­ЁжЁЁа®ў вм ᥠ­б ®Ў¬Ґ­  ¤ ­­л¬Ё;
wm_DDE_Terminate - ‡ ўҐаиЁвм ᥠ­б ®Ў¬Ґ­  ¤ ­­л¬Ё;
wm_DDE_Execute - ‚лЇ®«­Ёвм Є®¬ ­¤г;
wm_DDE_Ack - Џ®«гзЁвм бв вгб ®ЇҐа жЁЁ;
wm_DDE_Poke - Џ®б« вм ¤ ­­лҐ бҐаўҐаг;
wm_DDE_Request - ‡ Їа®бЁвм ¤ ­­лҐ г бҐаўҐа ;
wm_DDE_Advise - “бв ­®ўЁвм бўп§м б бҐаўҐа®¬;
wm_DDE_UnAdvise - ‡ ўҐаиЁвм бўп§м б бҐаўҐа®¬;
wm_DDE_Data - Џ®б« вм ¤ ­­лҐ Є«ЁҐ­вг.

Џа®Ја ¬¬Ёа®ў ­ЁҐ ®Ў¬Ґ­  Ї® ¤ ­­®© вҐе­®«®ЈЁЁ пў«пҐвбп
¤®ў®«м­® б«®¦­®© § ¤ зҐ©, з⮠ᤥনў «® а бЇа®бва ­Ґ­ЁҐ
вҐе­®«®ЈЁЁ DDE. Џ®н⮬㠤«п ᮧ¤ ­Ёп ЇаЁ«®¦Ґ­Ё©, ॠ«Ё§гойЁе DDE,
Ўл«  ᮧ¤ ­  бЇҐжЁ «Ё§Ёа®ў ­­ п ®ЎкҐЄв­®-®аЁҐ­вЁа®ў ­­ п
ЎЁЎ«Ё®вҐЄ  DDEML, пў«пой пбп ­ ¤бва®©Є®© ­ ¤ DDE Ё
ЇаҐ¤®бв ў«пой п API, ®Ў«ҐЈз ойЁ© ᮧ¤ ­ЁҐ DDE-ЇаЁ«®¦Ґ­Ё©.
‚¬Ґбв® ­ҐЇ®б।б⢥­­®© Ї®бл«ЄЁ DDE-б®®ЎйҐ­Ё© б Ї®¬®ймо
дг­ЄжЁ© SendMessage Ё PostMessage ЇаЁ«®¦Ґ­Ёп ЁбЇ®«м§гов дг­ЄжЁЁ
DDEML.

2) ‚в®а®© нв Ї бгйҐбвў®ў ­Ёп DDE, Є®Ј¤  DDE-ЇаЁ«®¦Ґ­Ёп
Їа®Ја ¬¬Ёаговбп б Ї®¬®ймо DDEML.
ќв®в нв Ї ¤ «ҐҐ Ўг¤Ґв а бᬮв७ Ў®«ҐҐ Ї®¤а®Ў­®. Ћв¬ҐвЁ¬
в®«мЄ®, зв® б Ї®пў«Ґ­ЁҐ¬ DDEML б«®¦­®бвм ᮧ¤ ­Ёп DDE-ЇаЁ«®¦Ґ­Ё©
㬥­миЁ« бм, ­® ўбҐ а ў­® ®бв ў « бм ҐйҐ ¤®ў®«м­® б«®¦­®©.

3) ’аҐвЁ© нв Ї бгйҐбвў®ў ­Ёп DDE ¬®¦­® бўп§ вм б Ї®пў«Ґ­ЁҐ¬
ўЁ§г «м­ле б।бвў а §а Ў®вЄЁ ЇаЁ«®¦Ґ­Ё©. ’ Є, ­ ЇаЁ¬Ґа, б। 
Delphi ЇаҐ¤« Ј Ґв § Є®­зҐ­­лҐ Є®¬Ї®­Ґ­вл DDE-Є«ЁҐ­в  Ё
DDE-бҐаўҐа , Є®в®алҐ бЄалў ов ў ᥡҐ ўбҐ д®а¬ «Ё§гҐ¬лҐ нв Їл
дг­ЄжЁ®­Ёа®ў ­Ёп DDE-ЇаЁ«®¦Ґ­Ё©, Ё бгйҐб⢥­­® ®Ў«ҐЈз ов ᮧ¤ ­ЁҐ
DDE-ЇаЁ«®¦Ґ­Ё©.

ЌҐ ᬮвап ­  а §ўЁвЁҐ DDE-вҐе­®«®ЈЁЁ ў ᮮ⢥вбвўЁҐ б
ЇҐаҐзЁб«Ґ­­л¬Ё в६п нв Ї ¬Ё, бгйҐбвўгов ­ҐЄ®в®алҐ ®ЎйЁҐ
Є®­жҐЇжЁЁ ў ­ҐҐ § «®¦Ґ­­лҐ, ®бв ойЁҐбп ­ҐЁ§¬Ґ­­л¬Ё.
Љ §­ Є®¬бвўг б нвЁ¬Ё Є®­жҐЇжЁп¬Ё ¬л Ё ЇҐаҐ©¤Ґ¬.

я3‘Ёб⥬   ¤аҐб жЁЁ ¤ ­­ле

DDE-Їа®в®Є®« ЁбЇ®«м§гҐв ваҐега®ў­Ґўго бЁбвҐ¬г  ¤аҐб жЁЁ
ЇҐаҐ¤ ў Ґ¬ле ¤ ­­ле:
Service Name - Ё¬п бҐаўЁб . ‘ ¬л© ўҐае­Ё© га®ўҐ­м  ¤аҐб жЁЁ.
‘ҐаўҐал ¬®Јгв ॠ«Ё§®ўлў вм ­ҐбЄ®«мЄ® ўЁ¤®ў бҐаўЁб , ®¤­ Є® з йҐ
ўбҐЈ® ®¤Ё­ бҐаўҐа ॠ«Ё§гҐв ®¤Ё­ ўЁ¤ бҐаўЁб , Ї®н⮬㠢 Є зҐб⢥
Ё¬Ґ­Ё бҐаўЁб  ¬®¦Ґв Ўлвм ЁбЇ®«м§®ў ­® Ё¬п ЇаЁ«®¦Ґ­Ёп -
Application.
Topic Name - Ё¬п ⥬л, ®ЇаҐ¤Ґ«по饥 ­ҐЄ®в®ал© «®ЈЁзҐбЄЁ©
Є®­вҐЄбв ¤ ­­ле. „«п бҐаўҐа®ў, а Ў®в ойЁе ­  ®б­®ўҐ д ©«®ўле
¤®Єг¬Ґ­в®ў, Ё¬п ⥬л з йҐ ўбҐЈ® б®ўЇ ¤ Ґв б Ё¬Ґ­Ґ¬ д ©« 
¤®Єг¬Ґ­в .
Item Name - Ё¬п н«Ґ¬Ґ­в  ¤ ­­ле. €¬п н«Ґ¬Ґ­в  Ё¤Ґ­вЁдЁжЁагҐв
н«Ґ¬Ґ­в ¤ ­­ле, Є®в®ал© ¬®¦Ґв Ўлвм ЇҐаҐ¤ ­ §  ®¤­г ва ­§ ЄжЁо.

’а ­§ ЄжЁҐ© Ўг¤Ґ¬ ­ §лў вм б®ЎлвЁҐ ЇҐаҐ¤ зЁ ®¤­®Ј® н«Ґ¬Ґ­в 
¤ ­­ле ®в Є«ЁҐ­в  Є бҐаўҐаг Ё«Ё ®в бҐаўҐа  Є Є«ЁҐ­вг.

‚ᥠваЁ га®ў­п ®ЇЁблў овбп бва®Є ¬Ё. ‘ва®ЄЁ еа ­пвбп ў
бЇҐжЁ «м­®© Ј«®Ў «м­®© в Ў«ЁжҐ. ‘бл«ЄЁ ­  ᮮ⢥вбвўгойЁҐ бва®ЄЁ
­ §лў овбп  в®¬ ¬Ё.
ЋЎ¬Ґ­ Є®­ЄаҐв­л¬Ё §­ зҐ­Ёп¬Ё ¤ ­­ле ўбҐЈ¤  б®Їа®ў®¦¤ Ґвбп
гЄ § ­ЁҐ¬ (пў­л¬ Ё«Ё ­Ґпў­л¬) ўбҐе ваҐе га®ў­Ґ©, Є Є®в®ал¬
®в­®бпвбп ЇҐаҐ¤ ў Ґ¬лҐ ¤ ­­лҐ.

я3Љ®­жҐЇжЁп дг­ЄжЁЁ ®вЄ«ЁЄ 

Њл 㦥 §­ Є®¬Ё«Ёбм б Ї®­пвЁҐ¬ Їа®жҐ¤гал ®Ўа в­®Ј® ўл§®ў ,
в.Ґ. Їа®жҐ¤гал, Є®в®аго ўл§лў Ґв б।  ¤«п ®Ї®ўҐйҐ­Ёп ЇаЁ«®¦Ґ­Ёп
® ўлЇ®«­Ґ­ЁЁ ­ҐЄ®в®але ¤Ґ©бвўЁ©.
”г­ЄжЁп ®вЄ«ЁЄ  ў DDE - нв® Ё Ґбвм Їа®жҐ¤га  ®Ўа в­®Ј®
ўл§®ў . Ћв«ЁзЁҐ ®в а ­ҐҐ а бᬮв७­ле ў аЁ ­в®ў б®бв®Ёв ў
Ў®«м襩 б«®¦­®бвЁ.
DDE-ЇаЁ«®¦Ґ­ЁҐ ®ЇаҐ¤Ґ«пҐв дг­ЄжЁо ®вЄ«ЁЄ , Є®в®аго Ўг¤Ґв
ўл§лў вм DDEML ў ®вўҐв ­  б®ЎлвЁп, ў®§­ЁЄ ойЁҐ ЇаЁ ᮧ¤ ­ЁЁ
ᮥ¤Ё­Ґ­Ёп ¬Ґ¦¤г ЇаЁ«®¦Ґ­Ёп¬Ё, ЇаЁ ®Ў¬Ґ­Ґ ¤ ­­л¬Ё Ё ЇаЁ
ࠧꥤЁ­Ґ­ЁЁ. DDEML ЇҐаҐ¤ Ґв ў нвг дг­ЄжЁо ­®¬Ґа ва ­§ ЄжЁЁ,  
дг­ЄжЁп Ї® н⮬㠭®¬Ґаг ўлЇ®«­пҐв § Їа®Ја ¬¬Ёа®ў ­­лҐ ¤Ґ©бвўЁп.
ЌЁ¦Ґ ЇаҐ¤бв ў«Ґ­  ЇаЁ¬Ґа­ п бвагЄвга  дг­ЄжЁЁ ®вЄ«ЁЄ :

Function CallBackProc(CallType : Word;
Fmt : Word;
Conv : HConv;
HSz1 : HSZ;
HSz2 : HSZ;
Data : HDDEData) : HDDEData;
Begin
CallBackProc := 0;
Case CallType Of
xtyp_... : Begin
{ॠЄжЁп ­  ᮮ⢥вбвўгойго ва ­§ ЄжЁо}
End;
Else
End {Case};
End {CallBackProc};

Ј¤Ґ CallType - вЁЇ ва ­§ ЄжЁЁ;
Fmt - д®а¬ в ¤ ­­ле,  ­ «®ЈЁз­л© д®а¬ в ¬ ¤ ­­ле Clipboard;
‘onv - ббл«Є  ­  Є ­ «;
HSz1 - ббл«Є  ­  бва®Єг; {нв® Ё«Ё Ї а  (‘ҐаўЁб, ’Ґ¬ ) Ё«Ё}
HSz2 - ббл«Є  ­  бва®Єг; {Ї а  (’Ґ¬ , ќ«Ґ¬Ґ­в)}
Data - ббл«Є  ­  ЇҐаҐ¤ ў Ґ¬лҐ Ё«Ё ЇаЁ­Ё¬ Ґ¬лҐ ¤ ­­лҐ.

я3ќв Їл дг­ЄжЁ®­Ёа®ў ­Ёп DDE-ЇаЁ«®¦Ґ­Ёп

„Ґ©бвўЁп, Є®в®алҐ ўлЇ®«­пҐв DDE-ЇаЁ«®¦Ґ­ЁҐ ў вҐзҐ­ЁҐ бў®ҐЈ®
¦Ё§­Ґ­­®Ј® жЁЄ« , а §«Ёз овбп ў § ўЁбЁ¬®бвЁ ®в в®Ј®, пў«пҐвбп нв®
ЇаЁ«®¦Ґ­ЁҐ бҐаўҐа®¬ Ё«Ё Є«ЁҐ­в®¬. Џ®н⮬г нв Їл дг­ЄжЁ®­Ёа®ў ­Ёп
DDE-бҐаўҐа  Ё DDE-Є«ЁҐ­в  а бᬮваЁ¬ а §¤Ґ«м­®.

я1€­ЁжЁ «Ё§ жЁп бҐаўҐа 

€­ЁжЁ «Ё§ жЁп бҐаўҐа  ўЄ«оз Ґв ў ᥡп б«Ґ¤гойЁҐ нв Їл:

1) ђҐЈЁбва жЁп дг­ЄжЁЁ ®вЄ«ЁЄ  ў б।Ґ. ќв® ¤Ґ« Ґвбп б
Ї®¬®ймо бЁб⥬­®© дг­ЄжЁЁ, Ё¬Ґо饩 б«Ґ¤го饥 Ё¬п:

MakeProcInstance(...).

”г­ЄжЁЁ MakeProcInstance ЇҐаҐ¤ Ґвбп  ¤аҐб дг­ЄжЁЁ ®вЄ«ЁЄ ,  
®­  ў®§ўа й Ґв § аҐЈЁбваЁа®ў ­­л© гЄ § вҐ«м ­  дг­ЄжЁо ®вЄ«ЁЄ .
‚ ¤ «м­Ґ©иҐ¬ Є дг­ЄжЁЁ ®вЄ«ЁЄ  ¬®¦­® ®Ўа й вмбп в®«мЄ® зҐаҐ§
нв®в § аҐЈЁбваЁа®ў ­­л© гЄ § вҐ«м.

2) ђҐЈЁбва жЁп бҐаўҐа  ў DDEML. ќв® ¤Ґ« Ґвбп б Ї®¬®ймо
дг­ЄжЁЁ DDEML, Ё¬Ґо饩 б«Ґ¤го饥 Ё¬п:

DDEInitialize(...).

”г­ЄжЁЁ DDEInitialize ЇҐаҐ¤ Ґвбп § аҐЈЁбваЁа®ў ­­л©
гЄ § вҐ«м ­  дг­ЄжЁо ®вЄ«ЁЄ ,   ў®§ўа й Ґв ®­  Ё¤Ґ­вЁдЁЄ в®а
ЇаЁ«®¦Ґ­Ёп Є Є DDE-ЇаЁ«®¦Ґ­Ёп Ё Є®¤ ®иЁЎЄЁ ॣЁбва жЁЁ.

3) ђҐЈЁбва жЁп "бҐаўЁб ", ЇаҐ¤®бв ў«пҐ¬®Ј® бҐаўҐа®¬. ќв®
¤Ґ« Ґвбп б Ї®¬®ймо дг­ЄжЁЁ DDEML, Ё¬Ґо饩 б«Ґ¤го饥 Ё¬п:

DDENameService(...).

”г­ЄжЁЁ DDENameService ЇҐаҐ¤ овбп Ё¤Ґ­вЁдЁЄ в®а
DDE-ЇаЁ«®¦Ґ­Ёп Ё бва®Є  б Ё¬Ґ­Ґ¬ бҐаўЁб ,   б ¬  дг­ЄжЁп
ў®§ўа й Ґв Є®¤ ®иЁЎЄЁ ॣЁбва жЁЁ.

Џ®б«Ґ ўлЇ®«­Ґ­Ёп ЇҐаҐзЁб«Ґ­­ле нв Ї®ў Ё­ЁжЁ «Ё§ жЁп бҐаўҐа 
§ Є ­зЁў Ґвбп Ё ®­ ЇҐаҐе®¤Ёв ў ०Ё¬ ®¦Ё¤ ­Ёп § Їа®б®ў ®в
Є«ЁҐ­в®ў.

я1€­ЁжЁ «Ё§ жЁп Є«ЁҐ­в 

€­ЁжЁ «Ё§ жЁп Є«ЁҐ­в  ўЄ«оз Ґв ў ᥡп б«Ґ¤гойЁҐ нв Їл:

1) ђҐЈЁбва жЁп дг­ЄжЁЁ ®вЄ«ЁЄ  ў б।Ґ. ќв® ¤Ґ« Ґвбп
 ­ «®ЈЁз­® ॣЁбва жЁЁ дг­ЄжЁЁ ®вЄ«ЁЄ  бҐаўҐа .

2) ђҐЈЁбва жЁп Є«ЁҐ­в  ў DDEML. ќв® в Є¦Ґ ¤Ґ« Ґвбп
 ­ «®ЈЁз­® ॣЁбва жЁЁ бҐаўҐа .

3) ‘®§¤ ­ЁҐ Є ­ «  бўп§Ё ¬Ґ¦¤г Є«ЁҐ­в®¬ Ё бҐаўҐа®¬.
‘®§¤ ­ЁҐ Є ­ «  ўлЇ®«­пҐвбп в®«мЄ® Ї® Ё­ЁжЁ вЁўҐ Є«ЁҐ­в  Ё
®бгйҐбвў«пҐвбп б Ї®¬®ймо ўл§®ў  дг­ЄжЁЁ, Ё¬Ґо饩 б«Ґ¤го饥 Ё¬п:

DDEConnect(...).

”г­ЄжЁЁ DDEConnect ЇҐаҐ¤ овбп бва®ЄЁ б Ё¬Ґ­ ¬Ё бҐаўЁб  Ё
⥬л,   в Є¦Ґ § аҐЈЁбваЁа®ў ­­л© Ё¤Ґ­вЁдЁЄ в®а DDE-Є«ЁҐ­в .
‚ б«гз Ґ гбЇҐи­®Ј® ўлЇ®«­Ґ­Ёп дг­ЄжЁп ў®§ўа й Ґв
ЇаЁ«®¦Ґ­Ёо-Є«ЁҐ­вг ббл«Єг ­  ᮧ¤ ­­л© Є ­ « бўп§Ё.
ќв Ї®¬ ᮧ¤ ­Ёп Є ­ «  § Є ­зЁў Ґвбп Ё­ЁжЁ «Ё§ жЁп Є«ЁҐ­в  Ё
Ї®пў«пҐвбп ў®§¬®¦­®бвм ®Ў¬Ґ­  ¤ ­­л¬Ё ¬Ґ¦¤г Є«ЁҐ­в®¬ Ё бҐаўҐа®¬.

ќв Їл Ё­ЁжЁ «Ё§ жЁЁ бҐаўҐа , ЇҐаҐзЁб«Ґ­­лҐ ўлиҐ, ўлЇ®«­повбп
ЎҐ§ Є Є®Ј®-«ЁЎ® гз бвЁп б® бв®а®­л Є«ЁҐ­в , Є«ЁҐ­в ¤ ¦Ґ ¬®¦Ґв
Ўлвм ў®®ЎйҐ ­Ґ § Ја㦥­.

Џ®б«Ґ¤­Ё© нв Ї Ё­ЁжЁ «Ё§ жЁЁ Є«ЁҐ­в  - ᮧ¤ ­ЁҐ Є ­ «  бўп§Ё
- ўлЇ®«­пҐвбп ЇаЁ гз бвЁЁ бҐаўҐа .
‘®§¤ ­ЁҐ Є ­ «  - б«®¦­ п Їа®жҐ¤га , ўЄ«оз ой п б«Ґ¤гойго
Ї®б«Ґ¤®ў вҐ«м­®бвм ¤Ґ©бвўЁ©.
ЏаЁ ўл§®ўҐ Є«ЁҐ­в®¬ дг­ЄжЁЁ DDEConnect, DDEML Ї®бл« Ґв
ва ­§ ЄжЁо xtyp_Connect ўбҐ¬ бҐаўҐа ¬, § аҐЈЁбваЁа®ў ўиЁ¬
ваҐЎгҐ¬л© бҐаўЁб.

”г­ЄжЁп ®вЄ«ЁЄ  Є ¦¤®Ј® бҐаўҐа , ў Є зҐб⢥ ॠЄжЁЁ ­  нвг
ва ­§ ЄжЁо, Їа®ўҐапҐв г бҐЎп ў®§¬®¦­®бвм Ї®¤¤Ґа¦ЄЁ § ¤ ­­ле
бҐаўЁб  Ё ⥬л, Ё Ґб«Ё бҐаўҐа Ї®¤¤Ґа¦Ёў Ґв Ёе, в® ®­ ў®§ўа й Ґв ў
DDEML ᮮ⢥вбвўгойЁ© ЇаЁ§­ Є (1) ЇаЁ § ўҐа襭ЁЁ ўлЇ®«­Ґ­Ёп
дг­ЄжЁЁ ®вЄ«ЁЄ . ќв® ®§­ з Ґв, зв® Є ­ « ¬Ґ¦¤г Є«ЁҐ­в®¬ Ё
бҐаўҐа®¬ ¬®¦Ґв Ўлвм ᮧ¤ ­.
Џ®«гзЁў ®¦Ё¤ Ґ¬л© ЇаЁ§­ Є ®в дг­ЄжЁЁ ®вЄ«ЁЄ  бҐаўҐа , DDEML
§ ўҐаи Ґв ўлЇ®«­Ґ­ЁҐ дг­ЄжЁЁ DDEConnect Є«ЁҐ­в , ў®§ўа й п
Ґ¬г Ё¤Ґ­вЁдЁЄ в®а Є ­ « .
ЏаЁ н⮬ DDEML ЇҐаҐ¤ Ґв бҐаўҐаг ­®ўго ва ­§ ЄжЁо
xtyp_Connect_Confirm Ё Ё¤Ґ­вЁдЁЄ в®а ᮧ¤ ­­®Ј® Є ­ «  Їг⥬
Ї®ўв®а­®Ј® ўл§®ў  ҐЈ® дг­ЄжЁЁ ®вЄ«ЁЄ .
’ ЄЁ¬ ®Ўа §®¬ Ё Є«ЁҐ­в Ё бҐаўҐа Ї®«гз ов Ё¤Ґ­вЁдЁЄ в®а
®¤­®Ј® Ё в®Ј® ¦Ґ Є ­ « , Ї®б«Ґ 祣® ᮥ¤Ё­Ґ­ЁҐ бзЁв Ґвбп
гбв ­®ў«Ґ­­л¬ Ё Ї®пў«пҐвбп ў®§¬®¦­®бвм ®Ў¬Ґ­  ¤ ­­л¬Ё.

я1ЋЎ¬Ґ­ ¤ ­­л¬Ё

’аЁ ў аЁ ­в  ®Ў¬Ґ­  ¤ ­­л¬Ё ¬®Јгв Ўлвм ॠ«Ё§®ў ­л б Ї®¬®ймо
DDE-вҐе­®«®ЈЁЁ.
1) ЏҐаҐ¤ з  ¤ ­­ле ®в бҐаўҐа  Є Є«ЁҐ­вг Ї® § Їа®бг
Ї®б«Ґ¤­ҐЈ®.
2) ЏҐаҐ¤ з  ¤ ­­ле ®в Є«ЁҐ­в  бҐаўҐаг.
3) ЏҐаҐ¤ з  ¤ ­­ле ®в бҐаўҐа  Є Є«ЁҐ­вг ЎҐ§ § Їа®б  ®в
Ї®б«Ґ¤­ҐЈ® ЇаЁ Ё§¬Ґ­Ґ­Ёпе ¤ ­­ле.

‚ᥠ¤Ґ©бвўЁп Ї® ®Ў¬Ґ­г ¤ ­­л¬Ё б® бв®а®­л Є«ЁҐ­в 
ўлЇ®«­повбп б Ї®¬®ймо дг­ЄжЁЁ

DDEClientTransaction(...).

ќв®© дг­ЄжЁЁ ЇҐаҐ¤ овбп Ё¤Ґ­вЁдЁЄ в®а Є ­ « , вЁЇ ва ­§ ЄжЁЁ
Ё ¤агЈЁҐ ¤ ­­лҐ, ®ЇаҐ¤Ґ«пҐ¬лҐ нвЁ¬ вЁЇ®¬. Ќ ЇаЁ¬Ґа, Ё¬п н«Ґ¬Ґ­в ,
д®а¬ в ¤ ­­ле,  ¤аҐб ¤ ­­ле.

я2ЏҐаҐ¤ з  ¤ ­­ле ®в бҐаўҐа  Ї® § Їа®бг ®в Є«ЁҐ­в 

„«п Ї®«г祭Ёп ¤ ­­ле ®в бҐаўҐа  Ї® § Їа®бг, Є«ЁҐ­в ўл§лў Ґв
дг­ЄжЁо DDEClientTransaction, Ї®бл« п ва ­§ ЄжЁо xtyp_Request ў
DDEML.
‚ б«гз Ґ гбЇҐи­®Ј® § ўҐа襭Ёп ва ­§ ЄжЁЁ, дг­ЄжЁп ў®§ўа й Ґв
ббл«Єг ­  § Їа иЁў Ґ¬лҐ ¤ ­­лҐ, ­ е®¤пйЁҐбп ў ®Ў« бвЁ Ј«®Ў «м­®©
Ї ¬пвЁ. ќвЁ ¤ ­­лҐ ¤®«¦­л Ўлвм Їа®зЁв ­л Є«ЁҐ­в®¬ ў «®Є «м­го
Ї ¬пвм б Ї®¬®ймо ўл§®ў  дг­ЄжЁЁ

DDEGetData(...),

Є®в®а®© ЇҐаҐ¤ овбп ббл«Є  ­  Ј«®Ў «м­го Ї ¬пвм, ᮤҐа¦ йго
¤ ­­лҐ, Ё гЄ § вҐ«м ­  ЎгдҐа ў «®Є «м­®© Ї ¬пвЁ.

Џ®б¬®ваЁ¬ ⥯Ґам, Є Є ॠЈЁагҐв ­  ва ­§ ЄжЁо xtyp_Request
бҐаўҐа.
DDEML ЇҐаҐ¤ Ґв нвг ва ­§ ЄжЁо бҐаўҐаг, ўл§лў п ҐЈ® дг­ЄжЁо
®вЄ«ЁЄ . Ља®¬Ґ вЁЇ  ва ­§ ЄжЁЁ, DDEML ЇҐаҐ¤ Ґв бҐаўҐаг д®а¬ в
¤ ­­ле Ё Ё¬Ґ­  вҐ¬л Ё н«Ґ¬Ґ­в .
…б«Ё бҐаўҐа Ї®¤¤Ґа¦Ёў Ґв § Їа иЁў Ґ¬лҐ д®а¬ в, ⥬㠨
н«Ґ¬Ґ­в, в® ®­ дг­ЄжЁҐ© ®вЄ«ЁЄ  ў®§ўа й Ґв ббл«Єг ­  вॡ㥬лҐ
¤ ­­лҐ.

ќв  ббл«Є  д®а¬ЁагҐвбп ЇаЁ ўл§®ўҐ дг­ЄжЁЁ

DDECreateDataHandle(...),

Є®в®а п § Їа иЁў Ґв Ў«®Є Ј«®Ў «м­®© Ї ¬пвЁ Ё ЇҐаҐЇЁблў Ґв ў ­ҐЈ®
¤ ­­лҐ Ё§ «®Є «м­®Ј® ЎгдҐа .

Соседние файлы в папке Конспект лекций для групп АСОИУ