Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Delphi. Π’Ρ€ΡŽΠΊΠΈ ΠΈ эффСкты». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 39

Автор Π’Π°Π»Π΅Ρ€ΠΈΠΉ Борисок

8.2. ИспользованиС Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°

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

Π‘ΡƒΡ„Π΅Ρ€ обСспСчиваСт ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями. Одно ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ Ρ‚ΡƒΠ΄Π° Π΄Π°Π½Π½Ρ‹Π΅, Π΄Ρ€ΡƒΠ³ΠΎΠ΅ – считываСт Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π°. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, эти дСйствия (Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΈ запись) Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ нСпосрСдствСнном участии ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ использовании Π±ΡƒΡ„Π΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ‡Π°ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ ΠΎΠ΄Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π² этом случаС ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ Π΅Π³ΠΎ.

Для выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€ Π² Delphi ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ класс TClipboard. Π’ Delphi Ρ‚Π°ΠΊΠΆΠ΅ имССтся Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Clipboard, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся экзСмпляром класса TClipboard ΠΈ прСдставляСт Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° Windows.

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ свойств ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°Π‘Π«Ρ€Π¬ΠΎΠ°^ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ осущСствлСниС Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΠ»ΠΈ Π°Π½Π°Π»ΠΈΠ·Π° Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Для доступа ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Π±ΡƒΡ„Π΅Ρ€Π° Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ uses модуля, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°, указываСтся ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Clipboard.

ΠžΠ±Ρ‰Π΅Π΅ количСство Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π±ΡƒΡ„Π΅Ρ€ΠΎΠΌ ΠΎΠ±ΠΌΠ΅Π½Π°, содСрТится Π² свойствС FormatCount Ρ‚ΠΈΠΏΠ° Integer. Для отобраТСния количСства Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ распознаСт Π±ΡƒΡ„Π΅Ρ€, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ листинг:

...

//Π’ Ρ€Π°Π·Π΄Π΅Π»Π΅ uses ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ Clipboard

InformationClipLabel.Caption := IntToString(Clipboard.FormatCount);

Π‘ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ самыС Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ список ΠΏΠΎΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹Ρ… констант Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ².

β€’ CF_TEXT – ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст (ΠΊΠΎΠ΄Ρ‹ ANSI). Π‘ΠΈΠΌΠ²ΠΎΠ» окончания строки – #1Π‘ ΠΈ #13, ΠΎΠΊΠΎΠ½Ρ‡Π°Π½ΠΈΠ΅ тСкста – #0.

β€’ CF_BITMAP – рисунок Π’ΠœΠ -Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

β€’ CF_MetaFilePic – рисунок WMF-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

β€’ CF_TIFF – рисунок TIFF-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

β€’ CF_OEMTEXT – тСкст.

β€’ CF_DIB – рисунок DIB-Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°.

β€’ CF_Wave – Π·Π²ΡƒΠΊ.

β€’ CF_UniCodeText – тСкст (ΠΊΠΎΠ΄Ρ‹ Unicode).

β€’ CF_Picture – ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° TPicture.

ΠŸΡ€ΠΈ нСобходимости ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ свои Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊ ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΡΡ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ.

ΠŸΡ€ΠΈ использовании нСстандартных Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Π΅ΠΌΡ‹Ρ… ΠΎΡ‚Ρ‚ΡƒΠ΄Π°, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ устанавливаСмыС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ соглашСния ΠΎΠ± ΠΎΠ±ΠΌΠ΅Π½Π΅ Ρ‚Π°ΠΊΠΈΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

Π’ листингС 8.3 приводится ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ наТатия ΠΊΠ½ΠΎΠΏΠΊΠΈ, Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‰ΠΈΠΉ Π² список ListBoxInf ΠΎ значСния констант, ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π°.

...

Листинг 8.3.

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² Π±ΡƒΡ„Π΅Ρ€Π°

procedure TFormClipboard.bnInfoCipClick(Sender: TObject);

var i: integer;

begin

ListBoxInfo.Clear;

for i := 0 to Clipboard.FormatCount – 1 do

ListBoxInfo.Items.Add(IntToStr(Clipboard.Formats[i]));

end;

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ ΠΈΠ·Π²Π»Π΅ΠΊΠ°Ρ‚ΡŒ Π΅Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚Π΅Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ Π±ΡƒΡ„Π΅Ρ€. Бписок ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² создаСтся ΠΏΡ€ΠΈ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ прилоТСния.

ΠŸΠ΅Ρ€Π΅Π΄ доступом ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ, содСрТащимся ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Clipboard, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π°Π½Π°Π»ΠΈΠ· Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π΄Π°Π½Π½Ρ‹Ρ…, для этого слуТит ΠΌΠ΅Ρ‚ΠΎΠ΄ HasFormat. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° HasFormat (Format: Word): Boolean ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для запроса ΠΊ Π±ΡƒΡ„Π΅Ρ€Ρƒ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈ позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² Π½Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Format. ΠŸΡ€ΠΈ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΌ ΠΎΡ‚Π²Π΅Ρ‚Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π°Π²Π½ΠΎ True, Π² ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС – False.

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ прилоТСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°. Но Π² случаС, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ Π±ΡƒΡ„Π΅Ρ€Ρƒ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Π΅Π³ΠΎ для сСбя Π² ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Для этого вызываСтся ΠΌΠ΅Ρ‚ΠΎΠ΄ Open, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½Ρ‹ΠΉ (ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ) доступ ΠΊ ΠΎΠ±Ρ‰Π΅ΠΉ области ΠΎΠ±ΠΌΠ΅Π½Π°. ПослС Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Open содСрТимоС Π±ΡƒΡ„Π΅Ρ€Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ прилоТСниями, поэтому послС окончания монопольного использования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Close ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Clipboard. Если ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Π±ΡƒΡ„Π΅Ρ€ Π½Π΅ Π±Ρ‹Π» Π·Π°ΠΊΡ€Ρ‹Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Close, Ρ‚ΠΎ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ автоматичСски Π·Π°ΠΊΡ€Ρ‹Ρ‚ систСмой послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅ΠΉ Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°.

Для очистки содСрТимого Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Clear. Он вызываСтся автоматичСски ΠΏΡ€ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ содСрТимого Π² Π±ΡƒΡ„Π΅Ρ€Π΅. ΠŸΠ΅Ρ€Π΅Π΄ записью Π½ΠΎΠ²Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅ΠΌΡ‹Ρ… Π² Π±ΡƒΡ„Π΅Ρ€, старая информация удаляСтся.

Класс TClipboard ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ классами ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°. К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ Memo ΠΈ Edit ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для ΠΎΠ±ΠΌΠ΅Π½Π° тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ посрСдством Π±ΡƒΡ„Π΅Ρ€Π°. ΠœΠ΅Ρ‚ΠΎΠ΄Ρ‹ CopyToClipBoardH CutToClipBoard ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ тСкстовыС Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°, копируя ΠΈ вырСзая ΠΈΡ… ΠΈΠ· источника (ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°) соотвСтствСнно, Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ PasteFromClipBoard вставляСт тСкстовый Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π° Π² тСкстовоС ΠΏΠΎΠ»Π΅.

Волько ΠΏΡ€ΠΈ использовании ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ, являСтся Π»ΠΈ содСрТимоС Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π° тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ. Π’ листингС 8.4 ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ копирования Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° всСго тСкста, Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π² тСкстовоС ΠΏΠΎΠ»Π΅.

...

Листинг 8.4.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкста ΠΈΠ· поля Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° Memo Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°

procedure TFormClipboard.bnCopyTextClick(Sender: TObject);

begin

//ВыдСляСм вСсь тСкст Π² ΠΏΠΎΠ»Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°

MemoText.SelectAll;

//ΠšΠΎΠΏΠΈΡ€ΡƒΠ΅ΠΌ тСкст

MemoText.CopyToClipBoard;

end;

Π‘ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для хранСния тСкста, поэтому ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Clipboard ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ свойство AsText Ρ‚ΠΈΠΏΠ° String, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ΅ для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ содСрТимого Π±ΡƒΡ„Π΅Ρ€Π° ΠΊΠ°ΠΊ Π΄Π°Π½Π½Ρ‹Ρ… тСкстового Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. Бвойство AsText ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ ΠΊΠ°ΠΊ для чтСния, Ρ‚Π°ΠΊ ΠΈ для записи. ΠŸΡ€ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠΈ свойства Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ·Π²Π»Π΅ΠΊΠ°ΡŽΡ‚ΡΡ ΠΈΠ· Π±ΡƒΡ„Π΅Ρ€Π°, Π° ΠΏΡ€ΠΈ записи – заносятся Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° (листинг 8.5).

...

Листинг 8.5.

ΠšΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ тСкстовой ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

procedure TFormClipboard.bnCopyTextAsTextClick(Sender: TObject);

begin

//Если Π² Π±ΡƒΡ„Π΅Ρ€Π΅ тСкст, Ρ‚ΠΎ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌ Π΅Π³ΠΎ Π² ΠΏΠΎΠ»Π΅ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°

if Clipboard.HasFormat(CF_Text)

then MemoText := Clipboard.AsText

end;

ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с графичСскими ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ для ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, связанных с ΠΎΠ±ΠΌΠ΅Π½ΠΎΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ±Ρ‰ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, ΡƒΠ΄ΠΎΠ±Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄ Assign. ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° Assign (Source: TPers is tent) присваиваСт Π±ΡƒΡ„Π΅Ρ€Ρƒ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ Source. Если ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ являСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Ρ‚Π°ΠΊΠΈΠΌ графичСским классам, ΠΊΠ°ΠΊ TBitmap, TPicture ΠΈΠ»ΠΈ TMetaf ile, Ρ‚ΠΎ Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° копируСтся ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ установлСнного Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°. Для извлСчСния изобраТСния Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ Assign.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования Π±ΡƒΡ„Π΅Ρ€Π° ΠΎΠ±ΠΌΠ΅Π½Π° для копирования ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ проводится Π² листингС 8.6.

...

Листинг 8.6.

ОбмСн ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°

procedure TFormClipboard.bnCopyImageClick(Sender: TObject);

begin

//ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ

Clipboard.Open;

//Заносим ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π±ΡƒΡ„Π΅Ρ€

Clipboard.Assign(ImageMyPic1.Picture);

//ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ находящихся Π² Π±ΡƒΡ„Π΅Ρ€Π΅ Π΄Π°Π½Π½Ρ‹Ρ…

if Clipboard.HasFormat(CF_Picture)

then ImageMyPic2.Picture.Assign(Clipboard);

//Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ Π±ΡƒΡ„Π΅Ρ€Ρƒ

Clipboard.Close;

end;

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, находящССся Π² ΠΎΠ±Ρ€Π°Π·Π΅ ImageMyPicl, помСщаСтся Π² Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π°, ΠΎΡ‚ΠΊΡƒΠ΄Π° Π·Π°Ρ‚Π΅ΠΌ копируСтся Π² ΠΎΠ±Ρ€Π°Π· ImageMyPic2. Для выполнСния этих ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ устанавливаСтся ΠΌΠΎΠ½ΠΎΠΏΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ Clipboard.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, использованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Clipboard Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΡˆΠΈΡ€ΠΎΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ. НСобходимо ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями), поэтому Ρ‚Π°ΠΊΠΎΠΉ способ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π΅Π½ с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. К Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ мноТСство Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΎΠ² прСдставлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ позволяСт ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΈ эффСктивным.

8.3. ΠŸΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹

НС ΠΌΠ΅Π½Π΅Π΅ ΠΌΠΎΡ‰Π½Ρ‹ΠΌ ΠΈ Π³ΠΈΠ±ΠΊΠΈΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями являСтся ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ базируСтся Π½Π° ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π°Ρ… (Files Mapping). Главная идСя этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° основываСтся Π½Π° использовании динамичСской раздСляСмой памяти систСмы для хранСния Π² Π½Π΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ…. Как извСстно, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ процСсс ΠΈΠΌΠ΅Π΅Ρ‚ свой участок памяти, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ адрСсным пространством. ΠŸΡ€ΠΈ использовании ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»ΠΎΠ² Π΄Π°Π½Π½Ρ‹Π΅ становятся доступны ΠΈΠ· любого процСсса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ этот Ρ„Π°ΠΉΠ». Π’ этом случаС говорят, Ρ‡Ρ‚ΠΎ Ρ„Π°ΠΉΠ» отобраТаСтся Π² Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ адрСсноС пространство процСсса, поэтому Π΄Π°Π½Π½Ρ‹Π΅, Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ Π² Ρ„Π°ΠΉΠ»Π΅, доступны процСссу, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ этот Ρ„Π°ΠΉΠ» ΠΎΡ‚ΠΊΡ€Ρ‹Π». ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ проСцирования Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ для DLL.

Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌΠΈ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ сущСствуСт Ρ†Π΅Π»Ρ‹ΠΉ ряд API-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Но ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΈΡ… Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ, разбСрСмся Π² процСссС ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ΅Ρ†ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹. На ΠΏΠ΅Ρ€Π²ΠΎΠΌ этапС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Ρ„Π°ΠΉΠ», ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ Π² ΠΏΠ°ΠΌΡΡ‚ΡŒ), Π·Π°Ρ‚Π΅ΠΌ Β«ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒΒ» созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π² адрСсноС пространство процСсса прилоТСния, получая Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ записи ΠΈ чтСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡ… этого Ρ„Π°ΠΉΠ»Π°. ΠŸΡ€ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Ρ„Π°ΠΉΠ»Π° Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ участок памяти (адрСсного пространства процСсса) манипуляции с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ этого участка памяти ΠΎΡ‚Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ Π½Π° содСрТимом Ρ„Π°ΠΉΠ»Π°. ПослС ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π½Π°Π΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ манипуляций Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»Π° (ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΡŽ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ Ρ„Π°ΠΉΠ»).