Π ΠΈΡ. 1.19. Π€ΠΎΡΠΌΠ°, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΠ°Ρ ΠΏΠΎΠ²Π΅ΡΡ Π΄ΡΡΠ³ΠΈΡ ΠΎΠΊΠΎΠ½
ΠΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ, Π΅ΡΠ»ΠΈ ΡΠΎΡΠΌΠ° ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΡΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, ΠΎΠ΄Π½Π°ΠΊΠΎ Π² ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΊ ΡΠ΅Π±Π΅ ΠΏΡΠΈΡΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ Π²Π½ΠΈΠΌΠ°Π½ΠΈΡ, Π΄Π»Ρ ΡΠ΅Π³ΠΎ ΠΈ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π½Π°Π²Π΅ΡΡ . Π‘ΠΏΠΎΡΠΎΠ± ΠΎΡΠ½ΠΎΠ²Π°Π½ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ API-ΡΡΠ½ΠΊΡΠΈΠΈ SetWindowPos, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΊΡΠΎΠΌΠ΅ ΠΏΠΎΠ·ΠΈΡΠΈΠΈ ΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΎΠΊΠ½Π° ΠΌΠΎΠΆΠ΅Ρ Π΅ΡΠ΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΊΠ½Π° (Z-order).
...ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠΎΠ΄ Z-order ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΎΠΊΠΎΠ½ Π²Π΄ΠΎΠ»Ρ ΠΎΡΠΈ Z, Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅ΡΠΏΠ΅Π½Π΄ΠΈΠΊΡΠ»ΡΡΠ½ΠΎ ΡΠΊΡΠ°Π½Ρ (ΠΎΡΠΈ X ΠΈ Π£Π»Π΅ΠΆΠ°Ρ Π² ΠΏΠ»ΠΎΡΠΊΠΎΡΡΠΈ ΡΠΊΡΠ°Π½Π°).
ΠΡΠ·ΠΎΠ² ΡΡΠ½ΠΊΡΠΈΠΈ SetWindowPos Π΄Π»Ρ ΠΏΠΎΠΌΠ΅ΡΠ΅Π½ΠΈΡ ΠΎΠΊΠ½Π° Π½Π°Π²Π΅ΡΡ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ (Handle β Π΄Π΅ΡΠΊΡΠΈΠΏΡΠΎΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π°):
...SetWindowPos(Handle, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE)
Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠΊΠ½ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°ΠΊΡΡΡΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΠΎΠΊΠ½ΠΎΠΌ, ΡΠ°ΠΊΠΆΠ΅ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠΌΡΡ ΠΏΠΎΠ²Π΅ΡΡ Π΄ΡΡΠ³ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΠΈΡΠΏΠ΅ΡΡΠ΅ΡΠΎΠΌ Π·Π°Π΄Π°Ρ).
Π§ΡΠΎΠ±Ρ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ) ΠΎΠΊΠ½Π°, ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ·Π²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ SetWindowPos ΡΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ Π½Π°Π±ΠΎΡΠΎΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ²:
...SetWindowPos(Handle, HWND_NOTOPMOST, 0, 0, 0, 0, SWP_NOMOVE or SWP_NOSIZE)
ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΠ΅, Π½Π΅ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅ΠΌΡΠ΅ ΠΏΠΎΠ²Π΅ΡΡ ΠΎΡΡΠ°Π»ΡΠ½ΡΡ , ΠΎΠΊΠ½Π° ΠΌΠΎΠ³ΡΡ ΡΠ½ΠΎΠ²Π° ΠΏΠ΅ΡΠ΅ΠΊΡΡΠ²Π°ΡΡ Π½Π°ΡΡ ΡΠΎΡΠΌΡ.
ΠΠ»Π°Π²Π° 2 Π£ΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΠ₯Π-ΡΠ°ΠΉΠ»Π°. ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Windows API
β’ ΠΡΡΠΎΡΠ½ΠΈΠΊ Π»ΠΈΡΠ½ΠΈΡ ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ
β’ Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠΊΠ½Π° Π²ΡΡΡΠ½ΡΡ
β’ ΠΠΊΠ½ΠΎ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ
β’ Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΡΠ΅ ΠΎΠΊΠ½Π° Windows
β’ Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΡΠΈΡΡΠ° ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ
ΠΠ΅ ΡΠ΅ΠΊΡΠ΅Ρ, ΡΡΠΎ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΠ₯Π-ΡΠ°ΠΉΠ»Π° Delphi ΡΠ°ΡΡΠΎ Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠ΅Π²ΠΎΡΡ ΠΎΠ΄ΠΈΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΎΡ Microsoft (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Visual C++, Visual Basic).
...ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΠ΄Π΅ΡΡ ΠΈ Π΄Π°Π»Π΅Π΅ ΠΈΠΌΠ΅ΡΡΡΡ Π² Π²ΠΈΠ΄Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΠΎΠΊΠΎΠ½Π½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ (Π½Π΅ ΠΊΠΎΠ½ΡΠΎΠ»ΡΠ½ΡΠ΅).
ΠΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΊΡΡΠΏΠ½ΡΡ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ² ΡΡΠΎΡ ΡΠ°ΠΊΡ Π°Π±ΡΠΎΠ»ΡΡΠ½ΠΎ Π½Π΅ ΡΠΌΡΡΠ°Π΅Ρ. ΠΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ ΠΆΠ΅ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π½Π° Delphi Π½ΡΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΌΠ΅Π½ΡΡΠ΅ ΠΌΠ΅ΡΡΠ° (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΎΡ) ΠΈΠ»ΠΈ Π·Π°Π³ΡΡΠΆΠ°ΡΡΡΡΡΡ Π·Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ΅ΡΠ²ΠΈΡΠ½ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ). ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΡΠ°ΠΊΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π½Π° C++, Π½ΠΎ ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΠΎΡΠ²Π°ΠΈΠ²Π°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π΅Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ?
Π ΡΡΠΎΠΉ Π³Π»Π°Π²Π΅ Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Ρ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΠ₯Π-ΡΠ°ΠΉΠ»Π°: ΠΎΡΠΊΠ°Π· ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Borland Π·Π° ΡΡΠ΅Ρ ΠΏΡΡΠΌΠΎΠ³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Windows API ΠΈ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ DLL. ΠΠ΅ΡΠ²ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ ΡΠ°Π·ΠΌΠ΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ Delphi-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π΄Π° Π΅ΡΠ΅ ΠΈ Ρ ΠΎΠΊΠΎΠ½Π½ΡΠΌ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠΌ) Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠ»ΡΠΊΠΎ API-ΡΡΠ½ΠΊΡΠΈΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ Π·Π°Π΄Π°ΡΠ΅ΠΉ Π²Π΅ΡΡΠΌΠ° ΡΡΡΠ΄ΠΎΠ΅ΠΌΠΊΠΎΠΉ, Ρ ΠΎΡΡ ΠΈ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠΉ, Π΄Π° ΠΊ ΡΠΎΠΌΡ ΠΆΠ΅ ΠΈ ΡΠΊΠ·ΠΎΡΠΈΡΠ½ΠΎΠΉ. ΠΡΠΎΡΠΎΠΉ ΠΆΠ΅ ΡΠΏΠΎΡΠΎΠ± Π½Π΅ ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ ΡΠ°Π·ΠΌΠ΅ΡΠ° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π² ΡΠ΅Π»ΠΎΠΌ, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡΡ Π²ΡΠ΅ΠΌΡ Π·Π°ΠΏΡΡΠΊΠ° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ½Π°ΡΠ°Π»Π΅ Π½Π΅Π±ΠΎΠ»ΡΡΠΎΠ΅ ΠΎΡΡΡΡΠΏΠ»Π΅Π½ΠΈΠ΅. ΠΡΠ°ΠΊ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° (Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΠΎ Windows) ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΡΠ΅Π±Ρ β Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΉ, Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΡΡ Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΈΡΡΠ΅ΠΌΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°Ρ , Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΠΉ Windows API (Windows Application Programming Interface β ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Windows-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ). ΠΡΠ±ΠΎΠΉ ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΠ΄ Windows Π½Π° Π»ΡΠ±ΠΎΠΌ ΡΠ·ΡΠΊΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π² ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠΌ ΡΡΠ΅ΡΠ΅ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ΅ΠΌΡ ΡΡΠ½ΠΊΡΠΈΠΈ Windows API. Π’ΠΎΠ»ΡΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡ ΡΠ°ΠΌΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΊΠ°ΠΊ ΡΠ²Π½ΡΠΌ, ΡΠ°ΠΊ ΠΈ ΡΠΊΡΡΡΡΠΌ Π·Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΏΠΎΡΡΠ°Π²Π»ΡΠ΅ΠΌΡΡ Π²ΠΌΠ΅ΡΡΠ΅ ΡΠΎ ΡΡΠ΅Π΄ΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π Π΅ΡΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΌΠΎΠΌΠ΅Π½Ρ. Π ΡΠ΅ΠΊΡΡΠ΅ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ Π³ΠΎΠ²ΠΎΡΠΈΡΡΡ ΠΎ Windows API, Π° Π½Π΅ ΠΏΡΠΎΡΡΠΎ API. ΠΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ°ΠΌΠΎ ΠΏΠΎΠ½ΡΡΠΈΠ΅ Application Programming Interface ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΠΊΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΠ‘, ΠΈ ΡΠΆ ΡΠ΅ΠΌ Π±ΠΎΠ»Π΅Π΅ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ Windows. ΠΠΎΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ²: UNIX API, Linux API, Oracle API (ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π‘Π£ΠΠ Oracle) ΠΈ Ρ. Π΄.
...ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
Π ΠΊΠ½ΠΈΠ³Π΅ ΠΎΠΏΠΈΡΠ°Π½Ρ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Window API, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ β ΡΡΠ²Π΅Π½Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ . ΠΠΎΠ»Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Windows API ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, Π΄Π»Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ Π½Π΅ Ρ Π²Π°ΡΠΈΡ ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ. ΠΡΠ»ΠΈ Π²Π°ΠΌ Π·Π°Ρ ΠΎΡΠ΅ΡΡΡ ΠΈΠ·ΡΡΠΈΡΡ ΠΈΠ»ΠΈ Ρ ΠΎΡΡ Π±Ρ ΡΠ·Π½Π°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎ Windows API, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΠΈΡΡΡΡ ΠΊ ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΡΠΌ ΠΏΠΎ ΡΡΠΎΠΉ ΡΠ΅ΠΌΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ Π½ΠΈΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ MSDN (ΠΎΠ³ΡΠΎΠΌΠ½Π°Ρ ΡΠΏΡΠ°Π²ΠΎΡΠ½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° ΠΎΡ Micr osoft Π΄Π»Ρ Visual Studio).
Π’Π΅ΠΏΠ΅ΡΡ Π²ΡΡΡΠ½ΠΈΠΌ, Π·Π° ΡΡΠ΅Ρ ΡΠ΅Π³ΠΎ ΡΠ°Π·ΡΠ°ΡΡΠ°Π΅ΡΡΡ ΠΠ₯Π-ΡΠ°ΠΉΠ» ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΡΠ΅Π΄Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Delphi.
2.1. ΠΡΡΠΎΡΠ½ΠΈΠΊ Π»ΠΈΡΠ½ΠΈΡ ΠΊΠΈΠ»ΠΎΠ±Π°ΠΉΡ
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ Π½ΠΎΠ²ΡΠΉ ΠΏΡΠΎΠ΅ΠΊΡ Windows-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Pro j ectl. exe). ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΎΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΠΈ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΠ΄Π½Ρ ΠΏΡΡΡΡΡ ΡΠΎΡΠΌΡ (ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° Π² ΠΌΠΎΠ΄ΡΠ»Π΅ Unitl. pas). ΠΠΈΡΠ΅Π³ΠΎ ΠΌΠ΅Π½ΡΡΡ Π½Π΅ Π±ΡΠ΄Π΅ΠΌ, ΠΏΡΠΎΡΡΠΎ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΡΠ΅ΠΌ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΠΠ₯Π-ΡΠ°ΠΉΠ»Π°. ΠΠΎΠ»ΡΡΠ΅ 300 ΠΠ±Π°ΠΉΡ β Π½Π΅ ΠΌΠ½ΠΎΠ³ΠΎΠ²Π°ΡΠΎ Π»ΠΈ Π΄Π»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ?
ΠΡΡΠ°ΡΠΈ, ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅Π΅ ΠΎΠΊΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΠΎΠ΅ Π½Π° Visual C++ 6.0 (Π² Release-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ, ΡΠΎ Π΅ΡΡΡ Π±Π΅Π· ΠΎΡΠ»Π°Π΄ΠΎΡΠ½ΠΎΠΉ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π² ΠΠ₯Π-ΡΠ°ΠΉΠ»Π΅) Π±Π΅Π· ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ MFC, ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 28 ΠΠ±Π°ΠΉΡ, Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ MFC (ΠΏΡΠ°Π²Π΄Π°, ΠΎΠΊΠ½ΠΎ Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅) β 20 ΠΠ±Π°ΠΉΡ. ΠΡΠΎΡΡΠ΅ΠΉΡΠ΅Π΅ ΠΎΠΊΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Visual Basic 6.0 Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ Π²ΡΠ΅Π³ΠΎ 16 ΠΠ±Π°ΠΉΡ.
ΠΠ·-Π·Π° ΡΠ΅Π³ΠΎ ΡΠ°ΠΊΠ°Ρ ΡΠ°Π·Π½ΠΈΡΠ°? ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠΌΠΈ Π½Π° ΡΡΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. ΠΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Dependency Walker, Π²Ρ ΠΎΠ΄ΡΡΠ΅ΠΉ Π² ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ Microsoft Visual Studio (ΡΠΈΡ. 2.1).
Π ΠΈΡ. 2.1. ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΠΌΠΈ
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΠΌ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Delphi (ΠΏΡΠ°Π²ΡΠΉ Π²Π΅ΡΡ Π½ΠΈΠΉ ΡΠ³ΠΎΠ» ΠΎΠΊΠ½Π° Π½Π° ΡΠΈΡ. 2.1) ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΏΡΠΈΠ»ΠΈΡΠ½ΡΠΉ Π½Π°Π±ΠΎΡ ΡΡΠ½ΠΊΡΠΈ ΠΉ, ΠΏΠΎΠΌΠ΅ΡΠ΅Π½Π½ΡΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ Windows. ΠΡΠΎΠΌΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Delphi Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ.
ΠΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ WinAPI. Π΅Ρ Π΅ (Π»Π΅Π²ΠΎΠ΅ Π²Π΅ΡΡ Π½Π΅Π΅ ΠΎΠΊΠ½ΠΎ Π½Π° ΡΠΈΡ. 2.1) ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΠΈΡΡΠΎΠ³ΠΎ Windows API ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΠΎΠΌ ΡΠΌΡΡΠ»Π΅, ΡΡΠΎ Π² Π½Π΅ΠΌ Π½Π΅ Π·Π°Π΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°Π½Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ-ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π½Π°Π΄ API-ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ, ΠΊΠ°ΠΊΠΈΠΌ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΠ±Π»Π΅Π³ΡΠ°ΡΡΠΈΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅. Π‘ΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ, ΡΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ ΠΈ Β«Π²Π΅ΡΠΈΡΒ» ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅Π΅ ΠΎΠΊΠΎΠ½Π½ΠΎΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.
Π‘ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ MFC. Π΅Ρ Π΅ ΡΠΆΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅Π΅: ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΌΠΎΠ³ΠΎ ΠΠ₯Π-ΡΠ°ΠΉΠ»Π° ΡΠΌΠ΅Π½ΡΡΠΈΠ»ΡΡ Π·Π° ΡΡΠ΅Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π° ΡΠ°Π±ΠΎΡΡ Ρ API-ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΡΠΈΠ»Π°ΡΡ Π² Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ. Π‘ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π° Visual Basic (ΠΏΡΠ°Π²ΠΎΠ΅ Π½ΠΈΠΆΠ½Π΅Π΅ ΠΎΠΊΠ½ΠΎ) Π΅ΡΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅Π΅ β ΠΎΠ½ΠΎ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π²ΡΠ·ΠΎΠ²Ρ ΡΡΠ½ΠΊΡΠΈΠΉ ΠΎΠ΄Π½ΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° Π²ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π° ΡΡΠΎΠΌ ΡΠ·ΡΠΊΠ΅ (ΠΏΡΠΈ Π΄Π΅ΡΠ°Π»ΡΠ½ΠΎΠΌ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ΠΈΠΈ ΡΡΠΎΠΉ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π² Π½Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΠΉ Visual Basic).
Π ΡΠ΅ΠΌΡ ΡΡΠΎ Π²ΡΠ΅? Π ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π΄ΡΡΠ³ΠΈΡ ΡΠ·ΡΠΊΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ (Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠ΅ΡΡ ΠΈΠ΄Π΅Ρ ΠΎ ΠΏΡΠΎΠ΄ΡΠΊΡΠ°Ρ Microsoft) ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Β«ΡΡΠΆΠ΅Π»ΠΎΠ²Π΅ΡΠ½ΡΒ», ΡΠ΅ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΠ΅ Π½Π° Borland Delphi, Π΅ΡΠ»ΠΈ ΠΏΡΠΈ ΠΈΡ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡ ΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ API-ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ. ΠΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»Π΅Π½ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΏΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Visual Basic, ΠΊΠΎΡΠΎΡΡΠΉ Ρ ΠΎΡΡ ΠΈ ΠΈΠΌΠ΅Π΅Ρ ΠΌΠ°Π»ΡΠΉ ΡΠ°Π·ΠΌΠ΅Ρ, Π½ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ Π½Π°Π»ΠΈΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ, ΡΠ°Π·ΠΌΠ΅Ρ ΠΊΠΎΡΠΎΡΠΎΠΉ ΠΎΠΊΠΎΠ»ΠΎ 1,32 ΠΠ±Π°ΠΉΡ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π° Visual C++ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, MFC, Π² ΠΊΠΎΡΠΎΡΠΎΠΉ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ ΠΊΠ»Π°ΡΡΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ Π½Π°Π΄ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Windows API (ΠΏΡΠ°Π²Π΄Π°, Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½ΠΈ), ΡΡΠ΅Π±ΡΠ΅ΡΠ½Π°Π»ΠΈΡΠΈΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ DLL. ΠΠ»Ρ Microsoft ΡΡΠΎ Π½Π΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΎΠ½Π½Π°Ρ ΡΠΈΡΡΠ΅ΠΌΠ° Windows Π²ΡΠΏΡΡΠΊΠ°Π΅ΡΡΡ ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ, Π° ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π½ΠΎΡΠΈΠΌΠΎΡΡΡ (Π·Π΄Π΅ΡΡ β ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ Π±Π΅Π· ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ) ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΅Π΅ ΠΆΠ΅ ΡΡΠ΅Π΄ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, ΠΎΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎ: Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π½ΡΠΆΠ½ΡΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ Π² ΡΠΎΡΡΠ°Π² ΠΠ‘.
Π§ΡΠΎ ΠΆΠ΅ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΡΡΠ°Π»ΠΎΡΡ ΡΠ΄Π΅Π»Π°ΡΡ Borland? ΠΠ°Π±Ρ Π½Π΅ Π»ΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΠΌΠΈ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΡΠ°ΠΌΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² (VCL ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ), ΠΊΠΎΠ΄ Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΡΡΠΈΡ ΡΠ°ΠΌΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°ΡΡ Π² ΠΎΠ΄ΠΈΠ½ ΡΠ°ΠΉΠ» Ρ ΡΠ°ΠΌΠΎΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΎΠΉ. ΠΠΎΡ ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ, ΡΡΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠΈΡ ΡΠ°ΠΌΡΡ ΠΊΠ»Π°ΡΡΠΎΠ² Π² ΠΠ₯Π-ΡΠ°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ ΠΌΠ΅ΡΡΠ° Π³ΠΎΡΠ°Π·Π΄ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π’Π°ΠΊ Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΈ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ....ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅
ΠΡΡΠ°ΡΠΈ, ΠΏΡΠΎΠ΅ΠΊΡ Π½Π° Visual C++ ΡΠ°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²Π°ΡΡ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ MFC (ΡΠΎ Π΅ΡΡΡ Π²ΠΊΠ»ΡΡΠΈΡΡ ΠΊΠΎΠ΄ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² Π² ΡΠ°ΠΌ ΠΠ₯Π-ΡΠ°ΠΉΠ»). Π’Π°ΠΊΠΈΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ, ΠΊΡΠΎΠΌΠ΅ ΡΠ΅Ρ , ΡΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎ ΠΏΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ Ρ Windows. ΠΠΎ ΠΏΡΠΈ ΡΡΠΎΠΌ ΡΠ°Π·ΠΌΠ΅Ρ ΠΠ₯Π-ΡΠ°ΠΉΠ»Π° ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π²ΡΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (Π² Release-ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ) Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π΅Ρ Π΄ΠΎ 192 ΠΠ±Π°ΠΉΡ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΎΠ±ΡΠ°ΡΠΈΠΌΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ Π½Π° Delphi. ΠΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΡΡΠΎ Π·Π°ΠΏΠΈΡΠ°Π½ΠΎ Π² ΡΠ°ΠΉΠ»Π°Ρ Unitl.pas ΠΈ Projectl. dpr. Π’Π΅ΠΊΡΡ ΡΠ°ΠΉΠ»Π° Unitl.pas ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ Π½ΠΈΠΆΠ΅ (Π»ΠΈΡΡΠΈΠ½Π³ 2.1).
...ΠΠΈΡΡΠΈΠ½Π³ 2.1.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Unitl.pas
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics,
Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
end.
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΡΠ΅ΠΊΡΠΈΡ uses. ΠΠ΄Π΅ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²ΠΈΠ΄Π΅ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π΄Π΅Π²ΡΡΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ ΠΊΠ»Π°ΡΡΠ° ΡΠΎΡΠΌΡ TForml, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡΡΠΎΠΊΡ, ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΡ Π½Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ°ΠΉΠ»Π° ΡΠ΅ΡΡΡΡΠΎΠ². ΠΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ, ΠΊΡΠΎΠΌΠ΅ ΠΏΠ΅ΡΠ²ΡΡ Π΄Π²ΡΡ , β ΡΡΠΎ ΡΠΆΠ΅ ΡΡΡΠ΄Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Borland, ΠΎΠ±Π»Π΅Π³ΡΠ°ΡΡΠΈΠ΅ ΠΆΠΈΠ·Π½Ρ ΠΏΡΠΎΡΡΡΠΌ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΠ°ΠΌ. ΠΠΎΠ΄ΡΠ»Ρ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΡΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΈ Π² ΡΠ°ΠΉΠ»Π΅ Pro j ectl. dpr (Π»ΠΈΡΡΠΈΠ½Π³ 2.2).
...ΠΠΈΡΡΠΈΠ½Π³
2.2. Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° Project1.dpr
program Project1;
uses
Forms,
Unit1 in \'Unit1.pas\' {Form1};