ΠΡΠΎΡΠ°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΡΠ²ΡΠ·Π°Π½Π½Π°Ρ ΡΠΎ ΡΠΏΡΠ°Π²ΠΊΠΎΠΉ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ hlp-ΡΠ°ΠΉΠ»ΠΎΠ²,β ΡΡΠΎ ΡΠΎ ΠΎΠ±ΡΡΠΎΡΡΠ΅Π»ΡΡΡΠ²ΠΎ, ΡΡΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Delphi, ΡΠ°Π·ΡΠΌΠ΅Π΅ΡΡΡ, Π½Π΅ ΡΠ°ΠΌΠΈ ΠΏΠΈΡΠ°Π»ΠΈ ΡΡΡ ΡΠΏΡΠ°Π²ΠΊΡ, Π° Π²Π·ΡΠ»ΠΈ ΡΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠ»Π° Microsoft. Microsoft ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ ΡΠΏΡΠ°Π²ΠΊΠΈ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ ΠLΠ Π²ΡΠΏΡΡΡΠΈΠ»Π° Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΡΠΆΠ΅ Π²ΡΡΠ»Π° Windows 95, Π½ΠΎ Π΅ΡΠ΅ Π½Π΅ Π±ΡΠ»ΠΎ Windows NT 4. ΠΠΎΡΡΠΎΠΌΡ ΠΏΡΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠ΅ Π² NT 4, ΡΠ°ΠΌ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΡΡΠΎ Π² Windows NT ΠΎΠ½ΠΈ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ, Ρ.ΠΊ. Π² Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΡ Π²Π΅ΡΡΠΈΡΡ ΠΎΠ½ΠΈ Π΄Π΅ΠΉΡΡΠ²ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π»ΠΈΡΡ. Π ΡΠΏΡΠ°Π²ΠΊΠ΅, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΉ Ρ Delphi 7 (ΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°Π½Π½ΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΡΠΌΠΈ), ΡΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΏΠΎΠ΄ΠΏΡΠ°Π²Π»Π΅Π½Π°, Π½ΠΎ Π΄Π°ΠΆΠ΅ ΠΈ ΡΠ°ΠΌ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Windows NT 4 (ΠΊΠ°ΠΊ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, CoCreateInstanceEx). Π ΡΠΆ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ, Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΡΠΊΠ°ΡΡ Π² ΡΡΠΎΠΉ ΡΠΏΡΠ°Π²ΠΊΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΡΠ½ΠΊΡΠΈΡΡ , ΠΏΠΎΡΠ²ΠΈΠ²ΡΠΈΡ ΡΡ Π² Windows 98, 2000, XΠ . Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Π² ΡΡΠΈΡ Π²Π΅ΡΡΠΈΡΡ Delphi Π΄Π°ΠΆΠ΅ Π½Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π²ΠΎΠΏΡΠΎΡ, ΡΡΠΎ ΠΏΡΠ΅Π΄ΠΏΠΎΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Windows API, β ΡΠΏΡΠ°Π²ΠΊΡ, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Ρ Delphi, ΠΈΠ»ΠΈ MSDN. ΠΠ΅Π·ΡΡΠ»ΠΎΠ²Π½ΠΎ, ΡΠ»Π΅Π΄ΡΠ΅Ρ Π²ΡΠ±ΡΠ°ΡΡ MSDN. Π‘ΠΏΡΠ°Π²ΠΊΠ°, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠ°Ρ Ρ Delphi, ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΏΠΎ ΡΡΠ°Π²Π½Π΅Π½ΠΈΡ Ρ MSDN: Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΈΠ· ΡΡΠ΅Π΄Ρ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ ΠΊΠ»Π°Π²ΠΈΡΠΈ <F1>. ΠΠΎ ΡΠΈΡΠΊ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π½Π΅Π²Π΅ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π²Π΅Π»ΠΈΠΊ, ΡΡΠΎΠ±Ρ ΡΡΠΎ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΠΌΠΎΠ³Π»ΠΎ Π±ΡΡΡ ΡΠ΅ΡΡΠ΅Π·Π½ΡΠΌ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠΌ. ΠΠ΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π° ΡΠΏΡΠ°Π²ΠΊΠ°, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠ°Ρ Ρ Delphi, β ΡΡΠΎ ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Ρ Π²Π°Ρ Π½Π΅Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΡΡΡΡΠΎΠ³ΠΎ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΠ½ΡΠ΅ΡΠ½Π΅ΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ online-Π²Π΅ΡΡΠΈΠ΅ΠΉ MSDN ΠΈ Π½Π΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΡΠΈΠΎΠ±ΡΠ΅ΡΡΠΈ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π΅Π³ΠΎ offline-Π²Π΅ΡΡΠΈΡ.
Π ΠΈΡ. 1.2. Π‘ΡΠ°ΡΠ°Ρ (Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ hlp-ΡΠ°ΠΉΠ»ΠΎΠ²) ΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠΎ Windows API (ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΡΠ½ΠΊΡΠΈΡ DeleteObject)
ΠΠ°ΡΠΈΠ½Π°Ρ Ρ BDS 2006, Borland/CodeGear ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»Π° Π½ΠΎΠ²ΡΡ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌΡ Borland Help (ΡΠΈΡ. 1.3). ΠΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡ ΠΎΠ½Π° ΠΎΡΠ΅Π½Ρ Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ offline Π²Π΅ΡΡΠΈΡ MSDN, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ Π² ΡΠΎΠΌ ΠΆΠ΅ ΡΠΎΡΠΌΠ°ΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΏΠΎ Delphi ΠΈ ΠΏΠΎ Windows API Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ. Π ΡΠΏΡΠ°Π²ΠΊΡ BDS 2006 ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΎΠ²Π°Π½Π° ΡΠΏΡΠ°Π²ΠΊΠ° ΠΏΠΎ Windows API ΠΎΡ 2002β2003 Π³ΠΎΠ΄ΠΎΠ² (ΡΠ°Π·Π½ΡΠ΅ ΡΠ°Π·Π΄Π΅Π»Ρ ΠΈΠΌΠ΅ΡΡ ΡΠ°Π·Π½ΡΡ Π΄Π°ΡΡ) Π‘ΠΏΡΠ°Π²ΠΊΠ° Delphi 2007 ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎ Windows API ΠΎΡ 2006 Π³ΠΎΠ΄Π°, Ρ.Π΅. ΡΠΎΠ²ΡΠ΅ΠΌ Π½ΠΎΠ²ΡΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Delphi 2007 Π½Π°ΠΊΠΎΠ½Π΅Ρ-ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΎΡΠΊΠ°Π·Π°ΡΡΡΡ ΠΎΡ offline-Π²Π΅ΡΡΠΈΠΈ MSDN, Π° ΠΊ online-Π²Π΅ΡΡΠΈΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ Π»ΠΈΡΡ ΠΈΠ·ΡΠ΅Π΄ΠΊΠ°, ΠΊΠΎΠ³Π΄Π° ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°ΠΌΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΡ Π² Windows API (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎ ΡΠ΅Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π² Windows Vista).
ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΡΠ΅Π½Ρ Π²ΡΡΠΎΠΊΠΎΠ΅ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎ ΡΠ°Π·Π΄Π΅Π»ΠΎΠ² MSDN, ΠΎΡΠ½ΠΎΡΡΡΠΈΡ ΡΡ ΠΊ Window API, ΠΎΡΠΈΠ±ΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π±ΡΠ²Π°ΡΡ ΠΈ ΡΠ°ΠΌ. Π‘ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π΅ΠΌ ΠΈΡ ΠΈΡΠΏΡΠ°Π²Π»ΡΡΡ. ΠΠΎΡΡΠΎΠΌΡ, Π΅ΡΠ»ΠΈ Π²Ρ ΡΡΠΎΠ»ΠΊΠ½ΡΠ»ΠΈΡΡ Ρ ΡΠΈΡΡΠ°ΡΠΈΠ΅ΠΉ, ΠΊΠΎΠ³Π΄Π° Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΎΠ·ΡΠ΅Π½ΠΈΠ΅, ΡΡΠΎ ΠΊΠ°ΠΊΠ°Ρ-Π»ΠΈΠ±ΠΎ ΡΡΠ½ΠΊΡΠΈΡ Windows API Π²Π΅Π΄ΡΡ ΡΠ΅Π±Ρ Π½Π΅ ΡΠ°ΠΊ, ΠΊΠ°ΠΊ ΡΡΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² Π²Π°ΡΠ΅ΠΉ offline-ΡΠΏΡΠ°Π²ΠΊΠ΅, Π΅ΡΡΡ ΡΠΌΡΡΠ» Π·Π°Π³Π»ΡΠ½ΡΡΡ Π² online-ΡΠΏΡΠ°Π²ΠΊΡ β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΡΠ°ΠΌ ΡΠΆΠ΅ ΠΏΠΎΡΠ²ΠΈΠ»ΠΈΡΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΡΠ²Π΅Π΄Π΅Π½ΠΈΡ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠΈ.
Π ΠΈΡ. 1.3. ΠΠΊΠ½ΠΎ ΡΠΏΡΠ°Π²ΠΊΠΈ Delphi 2007 (ΡΡΠ½ΠΊΡΠΈΡ DeleteObject)
Π‘ΠΈΡΡΠ΅ΠΌΠ° Windows Π½Π°ΠΏΠΈΡΠ°Π½Π° Π½Π° C++, ΠΏΠΎΡΡΠΎΠΌΡ Π²ΡΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Windows API, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Ρ Π½Π° ΡΡΠΎΠΌ ΡΠ·ΡΠΊΠ΅ (ΡΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ ΠΊΠ°ΠΊ MSDN, ΡΠ°ΠΊ ΠΈ ΡΠΏΡΠ°Π²ΠΊΠΈ, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΠΎΠΉ Ρ Delphi). ΠΡΠΈ ΡΡΠΎΠΌ, ΠΏΡΠ΅ΠΆΠ΄Π΅ Π²ΡΠ΅Π³ΠΎ, Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΡΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½ΡΡ . ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ ΡΠΈΠΏΠΎΠ², ΠΈΠΌΠ΅ΡΡΠΈΡ ΡΡ Π² Windows API. ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Ρ Π² Delphi. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΠΈΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ°Π±Π». 1.1.
Π’Π°Π±Π»ΠΈΡΠ° 1.1. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² Delphi ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΌ ΡΠΈΠΏΠ°ΠΌ
Π’ΠΈΠΏ Windows API Π’ΠΈΠΏ Delphi INT INT UINT LongWord WORD Word SHORT SmallInt USHORT Word CHAR Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΏΡ Char, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΠΊΡΠΎΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ ShortInt, Ρ.ΠΊ. Π² C++ Π½Π΅Ρ ΡΠ°Π·Π½ΠΈΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΌ ΠΈ ΡΠ΅Π»ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΠΌ ΡΠΈΠΏΠ°ΠΌΠΈ UCHAR Π§Π°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΏΡ Byte, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠ°ΠΊΡΠΎΠ²Π°ΡΡΡΡ ΡΠ°ΠΊΠΆΠ΅ ΠΊΠ°ΠΊ Char DWORD LongWord BYTE Byte WCHAR WideChar BOOL LongBool int Integer long LongInt short SmallInt unsigned int CardinalΠΠ°Π·Π²Π°Π½ΠΈΠ΅ ΡΠΈΠΏΠΎΠ² ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠ΅ΡΠΈΠΊΡ P ΠΈΠ»ΠΈ LP (Pointer ΠΈΠ»ΠΈ Long Pointer, Π² 16-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Π²Π΅ΡΡΠΈΡΡ Windows Π±ΡΠ»ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΠ΅ ΠΈ Π΄Π»ΠΈΠ½Π½ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ. Π 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Π²ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π΄Π»ΠΈΠ½Π½ΡΠ΅, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ±Π° ΠΏΡΠ΅ΡΠΈΠΊΡΠ° ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ ΡΠΌΡΡΠ»). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, LPDWORD ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΡΠΈΠΏΡ ^DWORD, PUCHAR β ^Byte. ΠΠ½ΠΎΠ³Π΄Π° ΠΏΠΎΡΠ»Π΅ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° P ΠΈΠ»ΠΈ LP ΡΡΠΎΠΈΡ Π΅ΡΠ΅ ΠΏΡΠ΅ΡΠΈΠΊΡ C β ΠΎΠ½ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΡΠΎ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ. Π C++ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ°ΠΊΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅, Ρ.Π΅. ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡ ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ ΡΡΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠΈΡΠ°ΡΡ, Π½ΠΎ Π½Π΅ ΠΌΠΎΠ΄ΠΈΡΠΈΡΠΈΡΠΎΠ²Π°ΡΡ. Π Delphi ΡΠ°ΠΊΠΈΠ΅ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ, ΠΈ ΠΏΡΠΈ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠΈ ΡΠΈΠΏΡ Π·Π°ΠΌΠ΅Π½ΡΡΡΡΡ ΠΎΠ±ΡΡΠ½ΡΠΌΠΈ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌΠΈ, Ρ.Π΅. ΠΏΡΠ΅ΡΠΈΠΊΡ C ΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅ΡΡΡ.
Π’ΠΈΠΏΡ PVOID ΠΈ LPVOID ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ Π½Π΅ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΡΠΌ (Pointer).
ΠΠ»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΠΈΠΏ TCHAR. Windows ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π΄Π²Π΅ ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠΈ: ANSI (1 Π±Π°ΠΉΡ Π½Π° ΡΠΈΠΌΠ²ΠΎΠ») ΠΈ Unicode (2 Π±Π°ΠΉΡΠ° Π½Π° ΡΠΈΠΌΠ²ΠΎΠ»; ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ΅ Unicode Π² Windows ΠΌΡ Π±ΡΠ΄Π΅ΠΌ Π³ΠΎΠ²ΠΎΡΠΈΡΡ Π΄Π°Π»Π΅Π΅). Π’ΠΈΠΏ CHAR ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ ANSI, WCHAR β Unicode. ΠΠ»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ANSI, ΡΠΈΠΏ TCHAR ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΡΠΈΠΏΡ CHAR, Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΡ Unicode β WCHAR. Π Delphi Π½Π΅Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ Π°Π½Π°Π»ΠΎΠ³Π° ΡΠΈΠΏΡ TCHAR. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΡΠ°ΠΌ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ»Π΅Π΄ΠΈΡΡ Π·Π° ΡΠ΅ΠΌ, ΠΊΠ°ΠΊΠΎΠΉ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠΉ ΡΠΈΠΏ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. Π‘ΡΡΠΎΠΊΠΈ Π² Windows API ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠΊΠ°Π·Π°ΡΠ΅Π»ΠΈ Π½Π° ΡΠ΅ΠΏΠΎΡΠΊΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ², Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΡ ΡΡ Π½ΡΠ»Π΅ΠΌ. ΠΠΎΡΡΠΎΠΌΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° TCHAR ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΊΠ°ΠΊ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ», ΡΠ°ΠΊ ΠΈ Π½Π° ΡΡΡΠΎΠΊΡ. Π§ΡΠΎΠ±Ρ Π±ΡΠ»ΠΎ Π»Π΅Π³ΡΠ΅ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ, Π³Π΄Π΅ ΠΊΠ°ΠΊΠΎΠΉ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ, Π² Windows API Π΅ΡΡΡ ΡΠΈΠΏΡ LPTCHAR ΠΈ LPTSTR. ΠΠ½ΠΈ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½Ρ Π΄ΡΡΠ³ Π΄ΡΡΠ³Ρ, Π½ΠΎ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΡΠΈΠ½ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ°ΠΌ, Π³Π΄Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΎΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ», Π° Π²ΡΠΎΡΠΎΠΉ β Π½Π° ΡΡΡΠΎΠΊΡ. ΠΡΠ»ΠΈ ΡΡΡΠΎΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² ΡΡΠ½ΠΊΡΠΈΡ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΡΡΠ΅Π½ΠΈΡ, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ Π½Π° ΠΊΠΎΠ½ΡΡΠ°Π½ΡΡ, Ρ.Π΅. ΡΠΈΠΏ LPCTSTR. Π Delphi ΡΡΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ PChar Π΄Π»Ρ ANSI ΠΈ PWideChar Π΄Π»Ρ Unicode. ΠΠ΄Π΅ΡΡ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΎΡΠΌΠ΅ΡΠΈΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² Π² ΡΠ·ΡΠΊΠ°Ρ C/C++. Π‘ΠΈΠΌΠ²ΠΎΠ» \ Π² Π»ΠΈΡΠ΅ΡΠ°Π»Π΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅: ΠΏΠΎΡΠ»Π΅ Π½Π΅Π³ΠΎ ΠΈΠ΄Π΅Ρ ΠΎΠ΄ΠΈΠ½ ΠΈΠ»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, \n ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄ ΡΡΡΠΎΠΊΠΈ, \t β ΡΠΈΠΌΠ²ΠΎΠ» ΡΠ°Π±ΡΠ»ΡΡΠΈΠΈ ΠΈ Ρ.ΠΏ. Π Delphi ΡΠ°ΠΊΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠ΅ΠΉ Π½Π΅Ρ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΈΠ· MSDN ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠ²Π½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΊΠΎΠ΄Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ². ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π»ΠΈΡΠ΅ΡΠ°Π» "Π°\nb" Π² Delphi ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² 'a\'#13'b'. ΠΠΎΡΠ»Π΅ ΡΠΈΠΌΠ²ΠΎΠ»Π° \ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ΄ΡΠΈ ΡΠΈΡΠ»ΠΎ β Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ΠΎ ΡΡΠ°ΠΊΡΡΠ΅ΡΡΡ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ ΡΠΈΠΌΠ²ΠΎΠ»Π°, Ρ.Π΅. Π»ΠΈΡΠ΅ΡΠ°Π» "a\0b9" Π² C/C++ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ 'Π°'#0'b'#9 Π² Delphi. ΠΡΠ»ΠΈ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΡΡΡΠΎΠΊΠΎΠ²ΡΠΉ Π»ΠΈΡΠ΅ΡΠ°Π» Π²ΠΊΠ»ΡΡΠ°Π» Π² ΡΠ΅Π±Ρ ΡΠ°ΠΌ ΡΠΈΠΌΠ²ΠΎΠ» \, Π΅Π³ΠΎ ΡΠ΄Π²Π°ΠΈΠ²Π°ΡΡ, Ρ.Π΅. Π»ΠΈΡΠ΅ΡΠ°Π» "\\" Π² C++ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ '\' Π² Delphi. ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΊΠΎΠ΄Π°, ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΡ Π² MSDN, ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ΡΠ΅Π΄ΠΊΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ, ΡΡΠΎ ΡΡΡΠΎΠΊΠΎΠ²ΡΠ΅ Π»ΠΈΡΠ΅ΡΠ°Π»Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ ΠΌΠ°ΠΊΡΠΎΡΠ°ΠΌΠΈ TEXT ΠΈΠ»ΠΈ _T, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ»ΡΠΆΠ°Ρ Π΄Π»Ρ ΡΠ½ΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΠΈΡΠΈ ΡΡΡΠΎΠΊΠΎΠ²ΡΡ Π»ΠΈΡΠ΅ΡΠ°Π»ΠΎΠ² Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ°Ρ ANSI ΠΈ Unicode. ΠΡΠΈ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π΅ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ»Π° Π½Π° Delphi ΡΡΠΈ ΠΌΠ°ΠΊΡΠΎΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΠΏΡΡΡΠΈΡΡ. Π‘ ΡΡΠ΅ΡΠΎΠΌ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΊΠΎΠΉ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠΎΠ΄ (Π²Π·ΡΡ ΠΈΠ· ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Named pipes):
LPTSTR lpszPipename = TEXT("\\\\.\\pipe\\mynamedpipe");
Π½Π° Delphi Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
var
lpszPipeName: PChar;
...
lpszPipeName:= '\\.\pipe\mynamedpipe';
ΠΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΡΠΈΠΏΠΎΠ² ΠΈΠ· Π»Π΅Π²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΡΠ°Π±Π». 1.1 Π² ΡΠ΅Π»ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ Windows, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡ Π½Π°ΡΠ°Π²Π½Π΅ Ρ ΠΎΠ±ΡΡΠ½ΡΠΌΠΈ ΡΠΈΠΏΠ°ΠΌΠΈ Delphi. ΠΡΠΎΠΌΠ΅ ΡΡΠΈΡ ΡΠΈΠΏΠΎΠ² ΠΎΠ±ΡΠ΅Π³ΠΎ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡ Π΅ΡΠ΅ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ ΠΎΠΊΠ½Π° ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ HWND, ΠΏΠ΅ΡΠ²ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ β ΡΠΈΠΏ WPARAM (Π² ΡΡΠ°ΡΡΡ 16-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ Windows ΠΎΠ½ Π±ΡΠ» ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ΅Π½ ΡΠΈΠΏΡ Word, Π² 32-ΡΠ°Π·ΡΡΠ΄Π½ΡΡ β LongInt). ΠΡΠΈ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠΈΠΏΡ ΡΠ°ΠΊΠΆΠ΅ ΠΎΠΏΠΈΡΠ°Π½Ρ Π² ΠΌΠΎΠ΄ΡΠ»Π΅ Windows.
ΠΠ°ΠΏΠΈΡΠΈ (record) Π² C/C++ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΡΡΡΡΠΊΡΡΡΠ°ΠΌΠΈ ΠΈ ΠΎΠ±ΡΡΠ²Π»ΡΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»ΠΎΠ²Π° struct. ΠΠ·-Π·Π° ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠ΅ΠΉ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡ Π½Π° ΡΠ·ΡΠΊΠ΅ Π‘ ΡΡΡΡΠΊΡΡΡΡ Π² Windows API ΠΏΠΎΠ»ΡΡΠ°ΡΡ Π΄Π²Π° ΠΈΠΌΠ΅Π½ΠΈ: ΠΎΠ΄Π½ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΈΠΌΡ, ΡΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΠ· Π³Π»Π°Π²Π½ΡΡ Π±ΡΠΊΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ Π·Π°ΡΠ΅ΠΌ ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ, ΠΈ ΠΎΠ΄Π½ΠΎ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅, ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π΅ΡΡ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠ΅ΡΠΈΠΊΡΠ° tag. ΠΠ°ΡΠΈΠ½Π°Ρ Ρ ΡΠ΅ΡΠ²Π΅ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Delphi ΠΏΡΠΈΠ½ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΡ ΡΠ°ΠΊΠΈΡ ΡΠΈΠΏΠΎΠ²: ΠΏΡΠΎΡΡΠΎΠ΅ ΠΈ Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΠ΅Π½Π° ΠΎΡΡΠ°ΡΡΡΡ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π΅ΡΠ΅ Π΄ΠΎΠ±Π°Π²Π»ΡΠ΅ΡΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ, ΠΏΠΎΠ»ΡΡΠ°ΡΡΠ΅Π΅ΡΡ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡΠ΅ΡΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π² Delphi ΠΏΡΠ΅ΡΠΈΠΊΡΠ° T. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π² ΡΡΠ½ΠΊΡΠΈΠΈ CreatePenIndirect ΠΎΠ΄Π½ΠΈ ΠΈΠ· ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ LOGPEN. ΠΡΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΈΠΌΡ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π° Π²ΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ β tagLOGPEN. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ, Π² ΠΌΠΎΠ΄ΡΠ»Π΅ Windows ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° Π·Π°ΠΏΠΈΡΡ tagLOGPEN ΠΈ Π΅Π΅ ΡΠΈΠ½ΠΎΠ½ΠΈΠΌΡ β LOGPEN ΠΈ TLogPen. ΠΡΠΈ ΡΡΠΈ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΠ° Π² Delphi Π²Π·Π°ΠΈΠΌΠΎΠ·Π°ΠΌΠ΅Π½ΡΠ΅ΠΌΡ. ΠΡΠΏΠΎΠΌΠΎΠ³Π°ΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΈΠΌΡ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ΅Π΄ΠΊΠΎ, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π»ΠΈΡΠ½ΡΡ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠ΅Π½ΠΈΠΉ, Π²ΡΠ±ΠΈΡΠ°ΡΡ Π»ΠΈΠ±ΠΎ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΈΠΌΡ ΡΠΈΠΏΠ°, Π»ΠΈΠ±ΠΎ ΠΈΠΌΡ Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠΎΠΌ T.