ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² LE-тСхнология Microsoft Windows

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ ООП Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΡΠ΅Ρ€Π΅Π΄ΠΈΠ½Π΅ 60-Ρ… Π³ΠΎΠ΄ΠΎΠ² Π² ΡΠ·Ρ‹ΠΊΠ΅ программирования Π‘ΠΈΠΌΡƒΠ»Π°-67. ПослСдний, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ Π½Π°ΡˆΠ΅Π» Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ распространСния ΠΊΠ°ΠΊ Π² ΡΠΈΠ»Ρƒ своСй ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшСй ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ языками Ρ‚ΠΈΠΏΠ° FORTRAN, ALGOL, PL/1 Ρ‚Π°ΠΊ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, нСадСкватности ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Ρ… срСдств Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹ΠΌ Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ Π·Π°Π΄Π°Ρ‡ΠΈ. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ для… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² LE-тСхнология Microsoft Windows (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² LE-тСхнология Microsoft Windows

ΠŸΡ€Π΅Π΄ΠΈΡΠ»ΠΎΠ²ΠΈΠ΅

НаиболСС распространСнным языком программирования послСднСго дСсятилСтия бСзусловно являСтся Π‘. Π­Ρ‚ΠΎΠΌΡƒ способствовали Ρ‚Π°ΠΊΠΈΠ΅ Π΅Π³ΠΎ особСнности, ΠΊΠ°ΠΊ Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ, ΠΌΠΎΡ‰Π½ΠΎΡΡ‚ΡŒ, Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ, ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ВмСстС с Ρ‚Π΅ΠΌ, ΡΡ‚Ρ€Π΅ΠΌΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ услоТнСниС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Π½Ρ‹Π΅ языки программирования ΠΈ, Π² Ρ‡Π°ΡΡ‚ности Π‘, Π·Π°ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΎΠ± ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ кризисС Π² ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠΈ, связанном ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго с Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎΠΉ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ΠΈ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒΡŽ.

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… нСдостатков Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ Π»ΠΈΡˆΠ΅Π½Ρ‹ языки ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Π³ΠΎ программирования (ООП), Π² ΡΠΎΠ½ΠΎΠ²Π΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ…Π»Π΅ΠΆΠΈΡ‚ идСя модСлирования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² посрСдством иСрархичСски связанных классов.

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ взятый класс рассматриваСтся ΠΊΠ°ΠΊ ΡΠΎΠ²Π°ΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ мноТСства Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Π½ΠΈΠΌΠΈ, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… класса Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ посрСдством ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ этого класса. УстановлСниС Ρ‡Π΅Ρ‚ΠΊΠΎΠΉ взаимозависимости ΠΌΠ΅ΠΆΠ΄Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡΠΌΠΈ Π²Π΅Π΄Π΅Ρ‚ ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΎΠΉ цСлостности Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ языками программирования. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, идСя программирования с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ классов Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт людям Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°.

Π’ΠΏΠ΅Ρ€Π²Ρ‹Π΅ ΠΈΠ΄Π΅ΠΈ ООП Π±Ρ‹Π»ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² ΡΠ΅Ρ€Π΅Π΄ΠΈΠ½Π΅ 60-Ρ… Π³ΠΎΠ΄ΠΎΠ² Π² ΡΠ·Ρ‹ΠΊΠ΅ программирования Π‘ΠΈΠΌΡƒΠ»Π°-67. ПослСдний, ΠΎΠ΄Π½Π°ΠΊΠΎ, Π½Π΅ Π½Π°ΡˆΠ΅Π» Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ³ΠΎ распространСния ΠΊΠ°ΠΊ Π² ΡΠΈΠ»Ρƒ своСй ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ мСньшСй ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎ ΡΡ€Π°Π²Π½Π΅Π½ΠΈΡŽ с Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ языками Ρ‚ΠΈΠΏΠ° FORTRAN, ALGOL, PL/1 Ρ‚Π°ΠΊ ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, нСадСкватности ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌΡ‹Ρ… срСдств Ρ€Π΅ΡˆΠ°Π΅ΠΌΡ‹ΠΌ Π² Ρ‚ΠΎ Π²Ρ€Π΅ΠΌΡ Π·Π°Π΄Π°Ρ‡ΠΈ. Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΈΠΌ Π²Π°ΠΆΠ½Ρ‹ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ для распространСия Π‘ΠΈΠΌΡƒΠ»Ρ‹-67 стали трудности, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Ρƒ программистов ΠΏΡ€ΠΈ Π΅Π³ΠΎ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠΈ. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ наряду с Ρ†Π΅Π»Ρ‹ΠΌ рядом бСзусловных достоинств, ΠΈΠ΄Π΅ΠΈ ООП ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ ΠΈ ΠΎΠ΄Π½ΠΈΠΌ сущСствСнным нСдостатком — ΠΎΠ½ΠΈ Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΡ€ΠΎΡΡ‚Ρ‹ для понимания ΠΈ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ для освоСния с Ρ†Π΅Π»ΡŒΡŽ практичСского использования.

Π‘++ - это ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Ρ‹Ρ‹ΠΉ язык, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ язык, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ программисту ΠΎΠΏΠ΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ. НазваниС языка «Π‘++ «ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ измСнСния языка Π‘ (запись «++ », Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘, ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΊ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ прибавляСтся Π΅Π΄ΠΈΠ½ΠΈΡ†Π°). Он ΠΈΠΌΠ΅Π΅Ρ‚ Π΅Ρ‰Π΅ Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹Π΅ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠ΅ срСдства для написания эффСктивных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‡Π΅ΠΌ Π‘, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ΅Π». Π§Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ Π½Π° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… языках, ΠΌΠΎΠΆΠ΅Ρ‚ просто ΠΏΠΎΡ‚Π΅Ρ€ΡΡ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²Ρƒ ΠΎΡ‚ Ρ‚Π΅Ρ… возмоТностСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прСдоставляСт Π‘++.

Но Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌ являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ распространСнный ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык, ΠΊΠ°ΠΊ Π‘, сохранСн Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ основы. Π‘ ΠΏΡ€ΠΎΡΡ‚, эффСктивСн, пСрСносим. Π§Π΅Π³ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅Ρ‚ Π² ΡΠ·Ρ‹ΠΊΠ΅ Π‘: строковых Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅Ρ‚, ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π½Π΅Ρ‚, срСдств ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования Ρ‚ΠΎΠΆΠ΅ Π½Π΅Ρ‚. НСт Π΄Π°ΠΆΠ΅ Π²Π²ΠΎΠ΄Π°-Π²Ρ‹Π²ΠΎΠ΄Π°.

Π’ΠΈΠΏΡ‹, ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ Π‘ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»ΠΈΠ·ΠΊΠΈ ΠΊ Ρ‚ΠΎΠΌΡƒ, с Ρ‡Π΅ΠΌ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ Π΄Π΅Π»ΠΎ Π² ΠΡΡΠ΅ΠΌΠ±Π»Π΅Ρ€Π΅, — числа, адрСса, арифмСтичСскиС ΠΈ Π»ΠΎΠ³ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ дСйствия, Ρ†ΠΈΠΊΠ»Ρ‹… ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ особСнности Π‘ Π½Π΅Π΄Π²ΡƒΡΠΌΡ‹ΡΠ»Π΅Π½Π½ΠΎ намСкаю компилятору, ΠΊΠ°ΠΊ ΡΠΎΠΊΡ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ Π²Ρ€Π΅ΠΌΡ исполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΈ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹Π΅ Ρ‡Π΅Ρ€Ρ‚Ρ‹ языка Π‘ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ эффСктивно Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΈ Π½Π΅ ΡΠ»ΠΈΡˆΠΊΠΎΠΌ слоТный компилятор. И Ρ…ΠΎΡ‚Ρ Π² ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… ΠΊΠΎΠ΄Π°Ρ… Π½Π° Ρ€Π°Π·Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… элСмСнтарныС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚Ρ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, вряд Π»ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ компилятора ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ Π² Π³ΠΎΠ»ΠΎΠ²Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ выраТСния ΠΊΠ°ΠΊΠΈΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ способом. ИмСнно поэтому язык Π‘ «ΠΈΠ΄Π΅Ρ‚ Π²Π΅Π·Π΄Π΅ ΠΈ Π½Π° Π²ΡΠ΅ΠΌ », ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, написанныС Π½Π° Π½Π΅ΠΌ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ эффСктивно, ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ с ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

MS Windows ΠΈ Π½ΠΎΠ²Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ..

Одним ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹Ρ… ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² взаимодСйствия ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ являСтся ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’ MS Windows сущСствуСт нСсколько способов взаимодСйствия ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ:

— ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ящик;

— Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ;

— Π²ΡΡ‚Ρ€Π°ΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π‘ΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ящик (clipboard) Windows позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅, Π½Π΅ Π·Π°Π±ΠΎΡ‚ΡΡΡŒ ΠΎΠ± Π΅Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ… ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»Π΅Π½ΠΈΠΈ.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСм, Π³Π΄Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ доступСн Ρ‚ΠΎΠ»ΡŒΠΊΠΎ программисту, Π² Windows это дСлаСтся ΠΎΡ‡Π΅Π½ΡŒ просто ΠΈ Π½Π°Π³Π»ΡΠ΄Π½ΠΎ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями — ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ свойство ΠΌΠ½ΠΎΠ³ΠΎΠ·Π°Π΄Π°Ρ‡Π½ΠΎΠΉ срСды. И Π² Π½Π°ΡΡ‚оящСС врСмя ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΏΡ€ΠΈΡˆΠ»ΠΈ ΡƒΠΆΠ΅ ΠΊ Π²Ρ‹Π²ΠΎΠ΄Ρƒ, Ρ‡Ρ‚ΠΎ для пСрСноса Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика ΡƒΠΆΠ΅ нСдостаточно. Появился Π½ΠΎΠ²Ρ‹ΠΉ, Π±ΠΎΠ»Π΅Π΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ — OLE (Object Linking and Embedding).

— Π’строСнная ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½Π°Ρ связь, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Ρ€Π°Π·Π½ΠΎΡ€ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. НапримСр, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π΄Π°Π½Π½Ρ‹Π΅, ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹Π΅ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Time Line for Windows (Symantec), ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΡ‚ΡŒ Π² Ρ‚Скстовый процСссор Just Write (Symantec), Π° Π·Π°Ρ‚Π΅ΠΌ, скаТСм, Π² Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Object Vision (Borland). ΠŸΡ€Π°Π²Π΄Π°, это ΡƒΠΆΠ΅ нСстандартноС срСдство Microsoft Windows, Π½ΠΎ Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ рСализация OLE стала Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² Windows.

ΠšΡ€ΠΎΠΌΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ, Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ, для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, программисту Π² Windows доступны ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ срСдства ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ ΠΏΡƒΡ‚Π΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΡΠΌΡƒΡŽ связь ΠΌΠ΅ΠΆΠ΄Ρƒ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, принимая Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠΎΡ€Ρ‚Π°, автоматичСски ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΈΡ…, скаТСм, Π² ΡΡ‡Π΅ΠΉΠΊΠΈ элСктронной Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Excel, срСдствами ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΡƒΡ‚ ΠΆΠ΅ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ слоТныС зависимости Π² Π²ΠΈΠ΄Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΎΠ² ΠΈΠ»ΠΈ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ носит Π½Π°Π·Π²Π°Π½ΠΈΠ΅ динамичСского ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ — Dynamic Data Exchange, DDE).

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ DDE — ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΡΠ΅Ρ€Π²Π΅Ρ€Π° Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

DDE-Π΄ΠΈΠ°Π»ΠΎΠ³ — взаимосвязь ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтским ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΌ прилоТСниями.

Π‘Π΅Ρ€Π²Π΅Ρ€-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ — DDE ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

DDE-ВранзакцияобмСн сообщСниями ΠΈΠ»ΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ.

Item имя — строка, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π°Ρ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мноТСство Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сСрвСр Π² ΡΠΎΡΡ‚оянии ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Service имя — строка, гСнСрируСмая сСрвСром ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ для установлСния Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Π‘Ρ‚Ρ€ΠΎΠΊΠΎΠ²Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ — Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ слово, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΠΎΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмой, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ строку, ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰ΡƒΡŽΡΡ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ динамичСского ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Topic имя — строка, которая ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… клиСнтскому ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΈ динамичСском ΠΎΠ±ΠΌΠ΅Π½Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Π€ΠΈΠ»ΡŒΡ‚Ρ€ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ — Ρ„Π»Π°Π³, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ прСпятствуСт ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°.

Π’ Microsoft Windows динамичСский ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹Ρ… являСтся Ρ„ΠΎΡ€ΠΌΠΎΠΉ связи, которая ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ±Ρ‰ΠΈΠ΅ области памяти для ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ DDE Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΡ Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‚ ΡΠ΅Ρ€Π²Π΅Ρ€Π°.

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ DDE схоТ с ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠΌ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы WINDOWS. БущСствуСт лишь Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Ρ€Π°Π·Π½ΠΈΡ†Π° Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹ΠΉ ящик, Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаС, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π±ΡƒΡ„Π΅Ρ€ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. DDE ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· Π΅Π³ΠΎ Π²ΠΌΠ΅ΡˆΠ°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°.

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° DDEML обСспСчиваСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π°Π±ΠΎΡ€ΠΎΠΌ срСдств, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΏΡ€ΠΎΡ‰Π°ΡŽΡ‚ использованиС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° DDE Π² WINDOWS прилоТСниях. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ DDE сообщСния Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DDEML Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ. Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° DDEML Ρ‚Π°ΠΊΠΆΠ΅ обСспСчиваСт Ρ€Π°Π±ΠΎΡ‚Ρƒ со ΡΡ‚Ρ€ΠΎΠΊΠ°ΠΌΠΈ ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ DDE прилоТСниями. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ Π½Π° ΠΎΠ±Ρ‰ΠΈΠ΅ области памяти, DDE прилоТСния ΡΠΎΠ·Π΄Π°ΡŽΡ‚ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°ΡŽΡ‚ся строковыми указатСлями, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ строки ΠΈ Π΄Π°Π½Π½Ρ‹Π΅.

Π£ΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ прилоТСния, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» DDE, основанный Π½Π° ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡΡ… ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ совмСстимы с Ρ‚Π΅ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ DDEML. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π΅ DDE-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» ΠΌΠΎΠ³ΡƒΡ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ DDEML.

Π’Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ.

DDE Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ всСгда ΠΌΠ΅ΠΆΠ΄Ρƒ клиСнтским ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΌ. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΡƒΡ‚Π΅ΠΌ установлСния Π΄ΠΈΠ°Π»ΠΎΠ³Π° с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. Вранзакция Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° для Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°Π½ΠΈΡ. Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π΅Ρ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ сразу нСсколько ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² Π² ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠΆΠ΅ врСмя, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ сразу ΠΎΡ‚ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… сСрвСров. НСкотороС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ. Π’ Π΄ΠΎΠ±Π°Π²ΠΎΠΊ ΠΊ Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±ΠΎΡ€Π²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ Π² Π»ΡŽΠ±ΠΎΠ΅ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ для Π½ΠΈΡ… врСмя.

DDE сСрвСр ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Ρ‚Ρ€ΠΈ Π·Π°Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° ΠΈΠΌΠ΅Π½, располоТСнных ΠΈΠ΅Ρ€Π°Ρ€Ρ…ΠΈΡ‡Π½ΠΎ: service, topic item — ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мноТСство Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

Service имя — это строка, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ сСрвСр Π² Ρ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ.

Topic имя — это строка, которая ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ логичСский контСкст Π΄Π°Π½Π½Ρ‹Ρ…. Для сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, topic ΠΈΠΌΠ΅Π½Π° это просто названия Ρ„Π°ΠΉΠ»ΠΎΠ²; для Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвСров — это спСцифичСскиС ΠΈΠΌΠ΅Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ прилоТСния. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ topic имя вмСстС с service ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Ρ…ΠΎΡ‡Π΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ.

Item имя — это строка, которая ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ мноТСство Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. НапримСр, item имя ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π¦Π•Π›ΠžΠ• (int, integer), БВРОКУ (string, char *), нСсколько ΠΏΠ°Ρ€Π°Π³Ρ€Π°Ρ„ΠΎΠ² тСкста, ΠΈΠ»ΠΈ BITMAP ΠΎΠ±Ρ€Π°Π·.

ВсС Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ ΠΈΠΌΠ΅Π½Π° ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚ Π½Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅.

БистСмный Ρ€Π΅ΠΆΠΈΠΌ

БистСмный Ρ€Π΅ΠΆΠΈΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ обСспСчиваСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° всСй Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ ΡΠ΅Ρ€Π²Π΅Ρ€Π΅.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ сСрвСры доступны Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, послСдний, Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ имя устройства, Ρ€Π°Π²Π½ΠΎΠ΅ NULL. Π’Π°ΠΊΠΎΠΉ шаблон Π΄ΠΈΠ°Π»ΠΎΠ³Π° максимально ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°Π΅Ρ‚ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π‘Π΅Ρ€Π²Π΅Ρ€, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ниТСописанныС item ΠΈΠΌΠ΅Π½Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ:

SZDDESYS ITEM TOPICS — список item ΠΈΠΌΠ΅Π½, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ сСрвСр Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π­Ρ‚ΠΎΡ‚ список ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

SZDDESYS ITEM SYSITEMS — список item ΠΈΠΌΠ΅Π½, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ сСрвСр Π² ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅.

SZDDDESYS ITEM STATUS — Π·Π°ΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ статус сСрвСра. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, Π΄Π°Π½Π½Ρ‹ΠΉ запрос поддСрТиваСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ CF_TEXT ΠΈ ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ строку Ρ‚ΠΈΠΏΠ° Π“ΠΎΡ‚ΠΎΠ²/Занят.

SZDDE ITEM ITEMLIST — список item ΠΈΠΌΠ΅Π½, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… сСрвСром Π² Π½Π΅ΡΠΈΡΡ‚Π΅ΠΌΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹. Π­Ρ‚ΠΎΡ‚ список ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ врСмя ΠΎΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

SZDDESYS ITEM FORMATS — список строк, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой список всСх Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… сСрвСром Π² Π΄Π°Π½Π½ΠΎΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³Π΅. НапримСр, CF_TEXT Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ прСдставлСн строкой TEXT.

ОсновноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ DDEML, Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°, которая ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ события, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. DDEML увСдомляСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ‚Π°ΠΊΠΈΡ… событиях ΠΏΡƒΡ‚Π΅ΠΌ посылки Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния.

Π’ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡ‚ΠΈ ΠΎΡ‚ Ρ„Π»Π°Π³Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, сформированного ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeInitialize, функция ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ отсортированныС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, являСтся Π»ΠΈ Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ, сСрвСром ΠΈΠ»ΠΈ Ρ‚Π΅ΠΌ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ uType ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΈΠΏ посланной Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ DDEML. ЗначСния ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² зависят ΠΎΡ‚ Ρ‚ΠΈΠΏΠΎΠ² Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. Π’ΠΈΠΏΡ‹ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π±ΡƒΠ΄ΡƒΡ‚ обсуТдСны Π½Π°ΠΌΠΈ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ «ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ » .

Π”ΠΈΠ°Π»ΠΎΠ³ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями

Π”ΠΈΠ°Π»ΠΎΠ³ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ всСгда устанавливаСтся ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Когда Π΄ΠΈΠ°Π»ΠΎΠ³ установлСн, ΠΎΠ±Π° ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт Π΄Π°Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³.

ΠŸΠ°Ρ€Ρ‚Π½Π΅Ρ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ DDEML для посылки Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΈ Π΄Π»Ρ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠšΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΊΠ°ΠΊ с ΠΎΠ΄Π½ΠΈΠΌ сСрвСром, Ρ‚Π°ΠΊ ΠΈ Ρ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΠΌΠΈ.

Рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ устанавливаСт Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠ°Π½Π°Π»Π°Ρ… связи.

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Π”ΠΈΠ°Π»ΠΎΠ³

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ устанавливаСт простой Π΄ΠΈΠ°Π»ΠΎΠ³ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeConnect ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ строк, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ содСрТат всю Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ service ΠΈΠΌΠ΅Π½ΠΈ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ сСрвСра ΠΈ ΠΈΠ½Ρ‚СрСсущСм ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ topic ΠΈΠΌΠ΅Π½ΠΈ.

DDEML ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° Π²Ρ‹Π·ΠΎΠ² этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ посылкой ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ XTYP_CONNECT Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ доступного Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ сСрвСра, зарСгистрированноС имя ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ совпадаСт с ΠΈΠΌΠ΅Π½Π΅ΠΌ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeConnect ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ сСрвСр Π½Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π» Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ service ΠΈΠΌΠ΅Π½ΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeServiceName.

Π‘Π΅Ρ€Π²Π΅Ρ€ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ Π½Π° XTYP_CONNECT Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π·Π°Π΄Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ Ρ„Π»Π°Π³Π° CBF_FAIL_CONNECTIONS ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeInitialize.

Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Ρ‚ΠΈΠΏΠ° XTYP_CONNECT DDEML ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΎΡ‚ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° service ΠΈ topic ΠΈΠΌΠ΅Π½Π° сСрвСру. Π‘Π΅Ρ€Π²Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ эти ΠΈΠΌΠ΅Π½Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ TRUE, Ссли ΠΎΠ½ Π² ΡΠΎΡΡ‚оянии Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, ΠΈ FALSE Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС. Если Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… сСрвСров Π½Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° CONNECT-запрос ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, функция DDeConnect Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅ΠΌΡƒ NULL с ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΠ• Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³.

Однако, Ссли сСрвСр Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΠ» TRUE, Ρ‚ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ Π±Ρ‹Π» ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ установлСн ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³Π° — Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ слово, посрСдством ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΈ Π²Π΅Π΄Π΅Ρ‚ся ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с ΡΠ΅Ρ€Π²Π΅Ρ€ΠΎΠΌ.

Π—Π°Ρ‚Π΅ΠΌ сСрвСр ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π²ΠΈΠ΄Π° XTYP_CONNECT_CONFIRM (Π² ΡΠ»ΡƒΡ‡Π°Π΅, Ссли ΠΎΠ½ ΠΠ• описывал Ρ„Π»Π°Π³ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π° CBF_FAIL_CONFIRMS ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ).

Если сСрвСр Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ TRUE Π² ΠΎΡ‚Π²Π΅Ρ‚ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ XTYP_CONNECT, DDEML посылаСт Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π²ΠΈΠ΄Π° XTYP_CONNECT_CONFIRM Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ сСрвСра. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π² эту Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ, сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈΠ΄Π΅Π½Π΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

ВмСсто ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ сСрвСра ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ шаблон Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΏΡƒΡ‚Π΅ΠΌ установки ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² service ΠΈ topic ΠΈΠΌΠ΅Π½ Π² NULL ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeConnect.

Если хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Ρ… ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² Ρ€Π°Π²Π΅Π½ NULL, DDEML посылаСт Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ° XTYP_WILDCONNECT Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° всСх Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ DDE-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ лишь Ρ‚Π΅, ΠΊΡ‚ΠΎ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Π» Ρ„Π»Π°Π³ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ XTYP_WILDCONNECT).

Π›ΡŽΠ±ΠΎΠ΅ сСрвСр-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° Π΄Π°Π½Π½ΡƒΡŽ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΌΠ°ΡΡΠΈΠ² структур Ρ‚ΠΈΠΏΠ° HSZPAIR, ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉΡΡ Π½ΡƒΠ»Π΅ΠΌ.

Если сСрвСр-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΠ• Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DDeNameService для рСгистрации собствСнного service ΠΈΠΌΠ΅Π½ΠΈ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ ΠΈ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½, Ρ‚ΠΎ ΡΠ΅Ρ€Π²Π΅Ρ€ ΠΠ• ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π²ΠΈΠ΄Π° XTYP_WILDCONNECT.

Π’Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Ρ‹ΠΉ массив Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ структуру для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ service ΠΈ topic ΠΈΠΌΠ΅Π½. DDEML Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ ΠΎΠ΄Π½Ρƒ ΠΏΠ°Ρ€Ρƒ ΠΈΠ· ΠΌΠ°ΡΡΠΈΠ²Π° для установлСния Π΄ΠΈΠ°Π»ΠΎΠ³Π° ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ. Π—Π°Ρ‚Π΅ΠΌ DDEML посылаСт сСрвСру Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π²ΠΈΠ΄Π° XTYP_CONNECT_CONFIRM (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ лишь Ρ‚Π΅ ΡΠ΅Ρ€Π²Π΅Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ установили Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ).

Π›ΡŽΠ±ΠΎΠΉ сСрвСр ΠΈΠ»ΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΡ€Π²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ Π² Π»ΡŽΠ±ΠΎΠ΅ врСмя ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeDisconnect. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ ΠΏΠΎ ΠΎΠ±ΠΌΠ΅Π½Ρƒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ° XTYP_DISCONNECT Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° (Ссли, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ Π½Π΅ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΠ» Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π²ΠΈΠ΄Π° CBF_SKIP_DISCONNECTIONS).

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π΅Π°Π³ΠΈΡ€ΡƒΠ΅Ρ‚ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ XTYP_DISCONNECT Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeQueryInfo для получСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π΅Π½Π½ΠΎΠΌ Π΄ΠΈΠ°Π»ΠΎΠ³Π΅. ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ функция ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π»Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ° XTYP_DISCONNECT, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³Π° большС Π½Π΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Ρ‚ΠΈΠΏΠ° XTYP_DISCONNECT Π² ΡΠ²ΠΎΠ΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeReconnect. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π²Π½ΡƒΡ‚Ρ€ΠΈ своСй собствСнной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π°.

Π‘Π»ΠΎΠΆΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DdeConnectList для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ сСрвСр-прилоТСния ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ service ΠΈ topic ΠΈΠΌΠ΅Π½Π°, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ; это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ DDEML Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ Π²ΠΈΠ΄Π° XTYP_CONNECT всС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° всСх ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ…ΡΡ Π² Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ сСрвСр-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‡ΡŒΠΈ зарСгистрированныС ΠΈΠΌΠ΅Π½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ (ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ лишь Ρ‚Π΅ ΡΠ΅Ρ€Π²Π΅Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΡ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ).

Π’ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊ Π²Ρ‹ΡˆΠ΅ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeConnectList, ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ NULL Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ service ΠΈΠ»ΠΈ topic ΠΈΠΌΠ΅Π½ΠΈ, Π»ΠΈΠ±ΠΎ ΠΆΠ΅ сразу для ΠΎΠ±ΠΎΠΈΡ…. ВсС доступныС Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ сСрвСры, Ρ‡ΡŒΠΈ зарСгистрированныС ΠΈΠΌΠ΅Π½Π° ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ с ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π½Π° Π΅Π³ΠΎ запрос. Π”ΠΈΠ°Π»ΠΎΠ³ устанавливаСтся со Π²ΡΠ΅ΠΌΠΈ Ρ‚Π°ΠΊΠΈΠΌΠΈ сСрвСрами, Π΄Π°ΠΆΠ΅ Ссли Π² ΡΠΈΡΡ‚Π΅ΠΌΠ΅ Π·Π°ΠΏΡƒΡ‰Π΅Π½ΠΎ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎΠΆΠ΅ сСрвСр-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ нСсколько Ρ€Π°Π·.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeQueryNextServer ΠΈ DdeQueryConvInfo для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ сСрвСр находится Π² ΡΠΏΠΈΡΠΊΠ΅, ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeConnectList. DdeQueryNextServer Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄ΠΈΠ°Π»ΠΎΠ³Π° для ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ сСрвСра, находящСгося Π² ΡΠΏΠΈΡΠΊΠ΅; DdeQueryConvInfo заполняСт структуру CONVINFO ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Π΅.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π° ΠΎΡΡ‚Π°Π²ΡˆΠΈΡ…ΡΡ сСрвСров Π² ΡΠΏΠΈΡΠΊΠ΅.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΡ€Π²Π°Ρ‚ΡŒ ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³, находящийся Π² ΡΠΏΠΈΡΠΊΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeDisconnect; ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±ΠΎΡ€Π²Π°Ρ‚ΡŒ всС Π΄ΠΈΠ°Π»ΠΎΠ³ΠΈ, находящиСся Π² ΡΠΏΠΈΡΠΊΠ΅ ΠΏΡƒΡ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeDisconnectList.

ОбС Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ DDEML ΠΎ Π½Π΅ΠΎΠ±Ρ…одимости посылки Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π²ΠΈΠ΄Π° XTYP_DISCONNECT Π²ΠΎ Π²ΡΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠ°Ρ€Ρ‚Π½Π΅Ρ€ΠΎΠ² ΠΏΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³Ρƒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния (Π² ΡΠ»ΡƒΡ‡Π°Π΅ использования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeDisconnectList Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒΡΡ транзакция XTYP_DISCONNECT для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ элСмСнта Π² ΡΠΏΠΈΡΠΊΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²).

ОбмСн Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями

Π’Π°ΠΊ ΠΊΠ°ΠΊ DDE ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ области памяти для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ прилоТСния Π² Π΄Ρ€ΡƒΠ³ΠΎΠ΅, DDEML обСспСчиваСт ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ программиста функциями, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… DDE-прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹.

Π’Π΅ΡΡŒ спСктр Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΈΡ…, создания Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π±ΡƒΡ„Π΅Ρ€Π°, содСрТащСго эти Π΄Π°Π½Π½Ρ‹Π΅, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeCreateDataHandle.

Π­Ρ‚Π° функция создаСт DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° Π² ΡΡ‚ΠΎΡ‚ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… для Π΄Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…-это Π΄Π²ΠΎΠΉΠ½ΠΎΠ΅ слово, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ DDEML для обСспСчСния доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π² DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… DDEML, Π° Π·Π°Ρ‚Π΅ΠΌ DDEML ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π΅Π³ΠΎ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° прилоТСния, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅Π³ΠΎ Π΄Π°Π½Π½Ρ‹Π΅.

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeAccessData. Π£ΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΡ‹ΠΉ этой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, обСспСчиваСт доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ «Π’ΠžΠ›Π¬ΠšΠž ΠΠ Π§Π’Π•ΠΠ˜Π• ». ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ этого указатСля ΠΈ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DdeUnaccessData для Π΅Π³ΠΎ уничтоТСния. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π·Π°Ρ€Π°Π½Π΅Π΅ ΠΏΡ€ΠΈΠ³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€ посрСдством Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeGetData.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°ΡŽΡ‰Π΅Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Π΅Π³ΠΎ DDEML, этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ портится Π²Π½ΡƒΡ‚Ρ€ΠΈ Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ прилоТСния. Π’ ΡΡ‚ΠΎΠΌ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΡΡ‚Ρ€Π°ΡˆΠ½ΠΎΠ³ΠΎ, Ссли сСрвСр Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΎΠ΄Π½ΠΈΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ. Если ΠΆΠ΅ сСрвСр Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π·Π΄Π΅Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ сразу с Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ, Π΅ΠΌΡƒ придСтся ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„Π»Π°Π³ HDATA_APPOWNED ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeCreateDataHandle.

Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π² собствСнности Π½Π° DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ сСрвСр-прилоТСния ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΡ€Ρ‡Ρƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… DDEML. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ DDEML ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… любоС количСство Ρ€Π°Π·, ΠΎΠ΄Π½Π°ΠΊΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DdeCreateDataHandle ΠΌΠΎΠΆΠ½ΠΎ лишь ΠΎΠ΄Π½Π°ΠΆΠ΄Ρ‹.

Если ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ„Π»Π°Π³ HDATA_APPOWNED Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ atCmd ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DdeCreateDataHandle, ΠΎΠ½ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DdeFreeDataHandle для очистки памяти Π²Π½Π΅ зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, пСрСдавался Π»ΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… DDEML ΠΈΠ»ΠΈ Π½Π΅Ρ‚. ΠŸΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΠΎΠ±ΠΎΡ€Π²Π°Ρ‚ΡŒ Π΄ΠΈΠ°Π»ΠΎΠ³, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ DdeFreeDataHandle для очистки всСх созданных ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ², Π½ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊ ΠΈ Π½Π΅ Π±Ρ‹Π»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Ρ‹ DDEML.

Если ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅Ρ‰Π΅ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° DDEML, Ρ‚ΠΎ ΠΎΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊ ΡƒΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΈΠ»ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π² Π½Π΅ΠΌ. ВсС эти сСрвисныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ DdeAddData.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ эту Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ для Π½ΠΎΠ²ΠΎΠΉ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ старых Π½Π΅ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Π΄Π°Π½Π½Ρ‹Ρ… DDEML, DDE-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ этот ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΠ• ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½, ΠΎΠ΄Π½Π°ΠΊΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½.

OLE-тСхнология.

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° DDE, прилоТСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ, Π° Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ Π΄Π°ΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΡΠΈΠΌΠ²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌΠΈ строками. Π­Ρ‚ΠΎ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ нСбольшой тСкст с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ°ΠΌΠΈ, ΠΏΠΈΠΊΡ‚ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ наглядными ΠΈΠ»ΠΈ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡΠΌΠΈ. Π’ ΡΡ‚ΠΎΠΌ случаС Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ программисту ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ OLE — встраиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

ВмСстС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ эти Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ.

Бпособы упорядочивания, источники ΠΈ Ρ†Π΅Π»Π΅Π²Ρ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹

ΠŸΡ€ΠΈ использовании OLE-Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ всСгда ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π΅Π»ΠΎ с ΠΎΠ΄Π½ΠΈΠΌ Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (Π³Π»Π°Π²Π½Ρ‹ΠΌ) ΠΈ ΠΎΠ΄Π½ΠΈΠΌ Π²Π΅Π΄ΠΎΠΌΡ‹ΠΌ (ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹ΠΌ), Π° Ρ‚ΠΎΡ‡Π½Π΅Π΅, с ΠΎΠ΄Π½ΠΈΠΌ Π²Π΅Π΄ΠΎΠΌΡ‹ΠΌ.

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для встраивания всСгда ΠΈΠ³Ρ€Π°Π΅Ρ‚ Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½ΠΎΠ³ΠΎ. Π­Ρ‚ΠΎ особСнно Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½ΠΎ для случаСв ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΏΡ€ΠΈ встраивании ΠΈ ΡΠ²ΡΠ·Ρ‹Π²Π°Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π°.

Часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅-источник ΠΈ Π¦Π΅Π»Π΅Π²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ Π½Π΅ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½ΠΈΡ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ гСнСалогию ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

НСкоторыС Windows-прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€ΠΎΠ»ΠΈ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½Ρ‹Ρ…, Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€ΠΎΠ»ΠΈ Π²Π΅Π΄ΡƒΡ‰ΠΈΡ…. НапримСр, Paintbrush Π² OLE Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΠ΄Ρ‡ΠΈΠ½Π΅Π½Π½ΠΎΠ³ΠΎ прилоТСния, слуТащСго для создания ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π”Ρ€ΡƒΠ³ΠΈΠ΅ прилоТСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Write ΠΈΠ»ΠΈ Cardfile ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½Π½Ρ‹ΠΌ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния, Ρ‡Ρ‚ΠΎ Π³ΠΎΡ€Π°Π·Π΄ΠΎ Ρ‡Π°Ρ‰Π΅ приходится Π²ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π² ΡΠ»ΠΎΠΆΠ½Ρ‹Π΅ ΠΏΠΎ ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π΅ тСкст, Ρ‡Π΅ΠΌ тСкст Π² ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΠΈ. НовыС прилоТСния, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Word, ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… OLE ΠΎΠ±Π΅ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π£ΠΏΠΎΡ‚Ρ€Π΅Π±Π»Π΅Π½ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ считаСтся прСстиТным Π² ΠΊΡ€ΡƒΠ³Π°Ρ… программистов, хотя часто ΠΎΠ½ ΡƒΠΏΠΎΡ‚рСбляСтся ΠΈ Π½Π΅ ΠΊ ΠΌΠ΅ΡΡ‚Ρƒ. Всякий Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ своим Π΄ΠΎΠ»Π³ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π΅ ООП Π±Π΅Π· особой Π½Π° Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…одимости. Π’ ΡΡ€Π΅Π΄Π΅ Windows Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ вкладываСтся нСсколько спСцифичСский смысл. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ°ΡŽΡ‚ ΠΏΠΎΡΡ‚ΠΈΠ³Π°Ρ‚ΡŒ Π°Π·Ρ‹ ООП, ΠΈΠ»ΠΈ Π·Π°Π½ΡΡ‚ΡŒΡΡ конструированиСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° Π‘++.

Когда ΠΎΠ± ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Ρ… говорят Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Windows, Ρ‚ΠΎ ΠΈΠΌΠ΅ΡŽΡ‚ Π² Π²ΠΈΠ΄Ρƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ встраивания Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°, ΠΏΠΎΡ€ΠΎΠΆΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π’ΠΎΡ‚ это «ΠΈΠ½ΠΎΡ€ΠΎΠ΄Π½ΠΎΠ΅ Ρ‚Π΅Π»ΠΎ «ΠΈ Π½Π°Π·Ρ‹Π²Π°Π΅Ρ‚ся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ.

Π’ Ρ‚Π°ΠΊΠΎΠΌ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π΅ Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½ΠΎΠ²ΠΎΠ³ΠΎ. Когда Π² Ρ‚Скст, ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ Write, вставляСтся рисунок ΠΈΠ· Paintbrush посрСдством Clipboard ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ† Exсel, Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΏΠΎΠ΄Π³ΠΎΡ‚Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ Π² Word, Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ дСйствия Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΠ°ΠΊ Ρ€Π°Π· появлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°.

Π’Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ всСгда ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΊΠΎΠΏΠΈΠΈ. Π Π°Π±ΠΎΡ‚Π° с Π½ΠΈΠΌΠΈ основываСтся Π½Π° Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ всС Windows прилоТСния ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ свой собствСнный Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, Π½ΠΎ ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ±ΠΎΠ±Ρ‰Π΅Π½Π½Ρ‹ΠΉ, стандартный, ΠΈΠ³Ρ€Π°ΡŽΡ‰ΠΈΠΉ Ρ€ΠΎΠ»ΡŒ общСизвСстного ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½ΠΎΠ³ΠΎ языка. Если, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ‚Скстовый Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ вставляСтся Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ процСссора, Ρ‚ΠΎ Π±ΡƒΡ„Π΅Ρ€ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ Π΅Π΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ ΠΊ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΌΡƒ, ΠΈ Ρ‚Π΅ΠΌ самым обСспСчиваСт вставку. Вакая копия Π² Ρ‚Скстовом Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ ΠΏΠΎ Π²ΠΈΠ΄Ρƒ Π½Π΅ ΠΎΡ‚личаСтся ΠΎΡ‚ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Ρƒ, Π½ΠΎ ΠΎΠ½Π° нСдоступна для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. НСвозмоТно, вставив Ρ‚Π°ΠΊΠΈΠΌ способом копию ΠΈΠ· Paintbrush Π² Write Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚, Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ Π»ΠΈΠ½ΠΈΠΉ ΠΈΠ»ΠΈ ΠΌΠ°ΡΡˆΡ‚Π°Π±.

НовыС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, доступныС Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Windows 3.1 ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Π΅, Π½ΠΎ ΠΎΠ½ΠΈ Π½Π΅ ΡΠ²Π»ΡΡŽΡ‚ся копиями — это ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Ρ‹. Они ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ Π² Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΠΎΠΌ экзСмплярС ΠΈ Π½Π°Ρ…одятся нСпострСдствСнно Π² Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ…. Π’Π°ΠΌ ΠΎΠ½ΠΈ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π² Π΄Π²ΡƒΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ… — Π² ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΌ ΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ прилоТСния-источника.

Благодаря стандартному Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°. Π˜ΠΌΠ΅Π΅Ρ‚ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Ρ‚Π°ΠΊΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π»ΡŽΠ±ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»Π°. Битуация выглядит Ρ‚Π°ΠΊ, словно Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° встроСн Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π­Ρ‚ΠΎ обСспСчиваСт доступ ΠΊ ΡΡ€Π΅Π΄ΡΡ‚Π²Π°ΠΌ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° (ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ-источнику) посрСдством простого Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅.

ВстроСнныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ, вставлСнная Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ Ρ†Π΅Π»Π΅Π²ΠΎΠ³ΠΎ прилоТСния, прСдставляСт собой ΠΎΠ±ΡŠΠ΅ΠΊΡ‚. Π’Π°ΠΊΠΎΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ встраиваСтся Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π²Π΅Π΄ΡƒΡ‰ΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Ρ€Π°ΡΡΠΌΠ°Ρ‚риваСтся ΠΊΠ°ΠΊ составная Ρ‡Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΠΏΠ΅Ρ‡Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡ‚ΡŒΡΡ вмСстС с Π½ΠΈΠΌ. Π’Π°ΠΊΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ любого Ρ‚ΠΈΠΏΠ°: тСкст, Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ ΠΈ Π΄Ρ€.

ВстроСнныС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΅Π΄ΠΈΠ½ΡΡ‚Π²Π΅Π½Π½ΠΎΠΌ экзСмплярС ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ встроСны — Π² Ρ†Π΅Π»Π΅Π²ΠΎΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅. ΠžΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΠ½ΠΈ своими «Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ «ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΌΠΈ вСсьма эффСктивным способом, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ.

БвязываниС с Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ вСсьма ΡƒΠ΄ΠΎΠ±Π½ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ встроСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² являСтся Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ связанными с ΠΏΠΎΡ€ΠΎΠ΄ΠΈΠ²ΡˆΠΈΠΌ ΠΈΡ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ. Благодаря этому ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ избавляСтся ΠΎΡ‚ Π½Π΅ΠΎΠ±Ρ…одимости ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π° ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²-источников. Достаточно Π΄Π²ΠΎΠΉΠ½ΠΎΠ³ΠΎ Ρ‰Π΅Π»Ρ‡ΠΊΠ° Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ — ΠΈ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠ°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСтся.

Π’Π°ΠΆΠ½Ρ‹ΠΌ достоинством ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ связывания встроСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² являСтся ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². МоТно Π»Π΅Π³ΠΊΠΎ пСрСнСсти Ρ‚Π°ΠΊΠΎΠΉ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ с ΠΎΠ΄Π½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ (Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π° Π½ΠΈΡ… ΠΎΠ±Π΅ΠΈΡ… Π±Ρ‹Π»Π° установлСна ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° ΠΈ Π±Ρ‹Π»ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ прилоТСния ΠΈΠ»ΠΈ динамичСскиС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΎΡ‚ Π½ΠΈΡ…). Для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ встроСнных ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² достаточно Π±ΡƒΠ΄Π΅Ρ‚ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ ΠΏΠΎ Π½Π΅ΠΉ Π΄Π²Π°ΠΆΠ΄Ρ‹ ΠΈ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ машинС ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ Ρ‚ΠΎΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ ΠΈ Π½Π° Π²Π°ΡˆΠ΅ΠΉ: вызовСтся ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ ΡΡ‚ΠΎΠΌ случаС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ условиСм пСрСноса являСтся Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ машинС тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Write ΠΈ Π³Ρ€Π°Ρ„ичСского Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Paintbrush.

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… DDE Ρ‚Π°ΠΊΠΎΠΉ пСрСнос Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, Ρ‚ΠΎΡ‡Π½Π΅Π΅ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΡΠ΅Π±Ρ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ пСрСнос самого Ρ„Π°ΠΉΠ»Π°-Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, Π½ΠΎ ΠΈ ΡΠ²ΡΠ·Π°Π½Π½Ρ‹Ρ… с Π΄Π°Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ Ρ„Π°ΠΉΠ»ΠΎΠ²-источников ΠΈ Ρ†Π΅Π»Π΅Π²Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² — всСй структуры.

ΠŸΠ΅Ρ€ΡΠΏΠ΅ΠΊΡ‚ΠΈΠ²Ρ‹ развития OLE.

ВСхнология OLE Π΄Π΅Π»Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ шаги. Пока Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Windows прилоТСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ OLE совмСстимыми. Π‘Ρ€Π΅Π΄ΠΈ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚ Π³Ρ€ΡƒΠΏΠΏΡ‹ Accessories вСрсии 3.1 Ρ‚Π°ΠΊΠΈΠΌΠΈ Π½Π° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡˆΠ½ΠΈΠΉ дСнь ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Write, Paintbrush ΠΈ Cardfile. Но Π΄Π°ΠΆΠ΅ ΠΎΠ½ΠΈ «Π² ΡΠ²ΠΎΠ΅ΠΌ ΠΊΡ€ΡƒΠ³Ρƒ «Π½Π΅ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ вставки Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ (Ρ‚.Π΅. ΠΈΠ· Π»ΡŽΠ±ΠΎΠΉ Π² Π»ΡŽΠ±ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ). Π’ Π½Π°ΡΡ‚Π°ΡŽΡ‰Π΅Π΅ врСмя Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ ΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ΅ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΎΠΏΡ€Π°Π²Π΄Π°Π½Π½ΠΎΠ³ΠΎ с ΠΏΡ€Π°ΠΊΡ‚ичСской Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния «Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡ встраивания «- ΠΈΠ· Paintbrush Π² Write ΠΈ Π‘ardfile Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽ OLE интСрфСйс, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΠ· OLE-совмСстимого прилоТСния Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ «Π’Π‘Π’ΠΠ’Π˜Π’Π¬ ΠžΠ‘ΠͺΠ•ΠšΠ’ «Π² ΠΌΠ΅Π½ΡŽ «Edit ». Π’ ΠΎΡ‚Ρ€Ρ‹Π²ΡˆΠ΅ΠΌΡΡ ΠΎΠΊΠ½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ продСмонстрирован список доступных встраиваСмых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

Π’ Π½Π°ΡΡ‚оящий ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ компиляторы ΡƒΠΆΠ΅ Π²Π²Π΅Π»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΡƒ OLE Π² ΡΠ²ΠΎΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ: Borland C++ ver4.5. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования OLE Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ 1. Данная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ созданный рисунок Paintbrush Π² Π²ΠΈΠ΄Π΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ ΠΈΠ· Clipboard.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ Π±Ρ‹ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ способы ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π»ΠΈ вмСстС с Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ΠΌ Windows. Как сама ΡΡƒΡ‚ΡŒ Windows, ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π·Π°Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ Π² Π½Π΅Π΅ Ρ†Π΅Π»ΡŒ: cΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π»ΡŽΠ±Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², Π½Π° Π»ΡŽΠ±ΠΎΠΌ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Ρ„ΠΈΡ€ΠΌΠ°-ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ (Ρ‚ΠΈΠΏΠ° Windows) ΠΏΡ‹Ρ‚Π°Π»Π°ΡΡŒ сама Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄Ρ€Π°ΠΉΠ²Π΅Ρ€Ρ‹ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ устройств ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² многочислСнных Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ², Ρ„ΠΈΡ€ΠΌΠ° Microsoft Π²ΠΎΠ·Π»ΠΎΠΆΠΈΠ»Π° эту ΠΎΠ±ΡΠ·Π°Π½Π½ΠΎΡΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΉ оборудования ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Clipboard—>DDE—>OLE являСтся ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ воплощСния ΠΈΠ΄Π΅ΠΈ «ΡΠ°ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π΅Π» — сам внСдряй ». ЕстСсствСнно, наибольшиС Π½Π°Π΄Π΅ΠΆΠ΄Ρ‹ сСйчас Π²ΠΎΠ·Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° OLE (Π΅Π΅ Π½ΠΎΠ²Ρ‹ΠΉ стандарт OLE.2), Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ этот стандарт позволяСт Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΡΠ΅Π±Ρ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½Ρ‹Π΅ срСдства, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Multimedia. Π’ ΠΎΠ΄Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ находится Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ тСкст, рисунок, Π° ΠΈ Π΄Π°ΠΆΠ΅ Ρ†Π΅Π»Ρ‹ΠΉ Ρ„ΠΈΠ»ΡŒΠΌ, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΎΠ·Π²ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ ΠΏΠΎΠΊΠ°Π·Ρƒ.

Бписок Π»ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

1. Π“Π»Π°Π΄ΠΊΠΎΠ² Π‘. А. Π€Ρ€ΠΎΠ»ΠΎΠ² Π“. Π’. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Microsoft Windows: Π’ 2-Ρ… частях. М.: «Π”Π˜ΠΠ›ΠžΠ“-МИЀИ », 1992.

2. Π€ΠΎΠΉΡ† Π‘. Windows 3.1 для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ΠŸΠ΅Ρ€. Ρ Π½Π΅ΠΌΠ΅Ρ†ΠΊΠΎΠ³ΠΎ КиСв: BHV, 1992.

3. Microsoft Windows Software Development Kit. Version 3. Programmer «s Reference, Programming Tools, Windows Extensions.

4. Charles Petzold. Programming Windows. Microsoft Press.

5 Borland C++. Usres manual.

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ