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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «БистСмноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² срСдС WindowsΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 7

Автор ДТонсон Π₯Π°Ρ€Ρ‚

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅

Π‘ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Ссли Π²Ρ‹ просмотритС систСмныС Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Π΅ (Π²ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡ‹Π΅) Ρ„Π°ΠΉΠ»Ρ‹, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТатся опрСдСлСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, констант, Ρ„Π»Π°Π³ΠΎΠ², ΠΊΠΎΠ΄ΠΎΠ² ошибок ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅. МногиС ΠΈΠ· ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… для нас интСрСс Ρ„Π°ΠΉΠ»ΠΎΠ², Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚Π΅ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ‹ Π½ΠΈΠΆΠ΅ Π² качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°, ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ срСды Microsoft Visual C++ ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Program Files\Microsoft Visual Studio.NET\Vc7\PlatformSDK\Include (ΠΈΠ»ΠΈ Program Files\Microsoft Visual Studio\VC98\Include Π² случаС VC++ 6.0):

WINDOWS.H (Ρ„Π°ΠΉΠ», ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ²)

WINNT.Н

WINBASE.H 

НаконСц, нСсмотря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ API Win32 с самого Π½Π°Ρ‡Π°Π»Π° разрабатывался ΠΊΠ°ΠΊ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ нСзависимый интСрфСйс, ΠΎΠ½ проСктировался с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ обСспСчСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости с API Winl6, Π²Ρ…ΠΎΠ΄ΠΈΠ²ΡˆΠΈΠΌ Π² состав Windows 3.1. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ досадным с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния программиста послСдствиям:

β€’ Π’ названиях Ρ‚ΠΈΠΏΠΎΠ² Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ элСмСнты Π°Π½Π°Ρ…Ρ€ΠΎΠ½ΠΈΠ·ΠΌΠ°, ΠΊΠ°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² случаС Ρ‚ΠΈΠΏΠΎΠ² LPTSTR ΠΈ LPDWORD, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π½Π° "Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся простым 32– ΠΈΠ»ΠΈ 64-Π±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΌ. ΠΠ΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ Π² указатСлях ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° отсутствуСт. Иногда ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π°Ρ "Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ" опускаСтся, ΠΈ Ρ‚ΠΎΠ³Π΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΠΈΠΏΡ‹ LPVOID ΠΈ PVOID ΡΠ²Π»ΡΡŽΡ‚ΡΡ эквивалСнтными.[8]

β€’ Π’ ΠΈΠΌΠ΅Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… символичСских констант, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ WIN32_FIND_DATA, Π²Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ "WIN32", хотя Ρ‚Π΅ ΠΆΠ΅ константы ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ Π² Win64.

β€’ ΠΠ΅ΡΠΌΠΎΡ‚ря Π½Π° Ρ‚ΠΎ Ρ‡Ρ‚ΠΎ упомянутая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости Π² настоящСС врСмя потСряла свою Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ, ΠΎΠ½Π° оставила послС сСбя мноТСство 16-разрядных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π½ΠΈ ΠΎΠ΄Π½Π° ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π² этой ΠΊΠ½ΠΈΠ³Π΅ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ, хотя ΠΈ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ эти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΈΠ³Ρ€Π°ΡŽΡ‚ вСсьма Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ привСсти Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ OpenFile, которая, судя ΠΏΠΎ Π΅Π΅ названию, Π½ΡƒΠΆΠ½Π° для открытия Ρ„Π°ΠΉΠ»ΠΎΠ², Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ сти для открытия ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ² всСгда слСдуСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ CreateFile.

ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с Win64

Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ Win64, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΎ врСмя написания Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΈ поддСрТивался Windows XP ΠΈ Windows Server 2003 Π½Π° процСссорах сСмСйства AMD64 (Opteron ΠΈ Athlon 64) ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ AMD ΠΈ процСссорах сСмСйства Itanium (Ρ€Π°Π½Π΅Π΅ извСстных ΠΏΠΎΠ΄ ΠΊΠΎΠ΄ΠΎΠ²Ρ‹ΠΌΠΈ названиями Merced, McKinley, Madison ΠΈ IA-64) ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Intel, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠ³Ρ€Π°Ρ‚ΡŒ всС Π±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ ΠΏΡ€ΠΈ создании ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. БущСствСнныС отличия ΠΌΠ΅ΠΆΠ΄Ρƒ Win32 ΠΈ Win64 обусловлСны различиями Π² Ρ€Π°Π·ΠΌΠ΅Ρ€Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ (64 Π±ΠΈΡ‚Π° Π² Win64) ΠΈ объСмС доступного Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ адрСсного пространства.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ пСрСноса ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ Win64 ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ излоТСния ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π½Π° протяТСнии всСй ΠΊΠ½ΠΈΠ³ΠΈ, Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ созданиС ΠΈΡ… Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Win64 ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°Π»ΠΎΡΡŒ простым ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π½Π° стадии компиляции. Π’ находящихся Π½Π° Web-хостС ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ… с ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°ΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π² Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… случаях прСдусмотрСн Π²Ρ‹Π²ΠΎΠ΄ сообщСний, ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰ΠΈΡ… ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΊ 64 разрядам, Π½ΠΎ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ситуаций (хотя ΠΈ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ всС), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³Π»ΠΈ Π±Ρ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ Ρ‚Π°ΠΊΠΈΡ… сообщСний, ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния программиста основныС отличия ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ ΠΊ Win64 обусловлСны Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π»ΠΈΠ½Ρ‹ указатСля ΠΈ цСлочислСнной ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (LONG, DWORD ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅) Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ. Π‘ этой Ρ†Π΅Π»ΡŒΡŽ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚ΠΈΠΏΡ‹ DWORD32 ΠΈ DWORD64, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ явно ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π”Π²Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠ°, POINTER_32 ΠΈ POINTER_64, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ.

Как Π²Ρ‹ сами ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΠ² лишь самыС Π½Π΅Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ усилия, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ ΠΊΠ°ΠΊ Π² Win32, Ρ‚Π°ΠΊ ΠΈ Π² Win64, ΠΈ поэтому ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ часто ΡΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° API просто ΠΊΠ°ΠΊ Π½Π° Windows ΠΈΠ»ΠΈ, ΠΈΠ½ΠΎΠ³Π΄Π°, Win32. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ информация ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Win64 содСрТится Π² Π³Π»Π°Π²Π΅ 16, Π³Π΄Π΅, Π² частности, ΠΎΠ±ΡΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ вопросы совмСстимости исходных ΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠ΄ΠΎΠ². 

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Ρ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с UNIX ΠΈ Linux, столкнутся Π² Windows с рядом интСрСсных особСнностСй. Π’Π°ΠΊ, Π² Windows дСскрипторы HANDLE ΡΠ²Π»ΡΡŽΡ‚ΡΡ "Π½Π΅ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½Ρ‹ΠΌΠΈ". Они Π½Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ряд ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°ΡŽΡ‰ΠΈΡ… Ρ†Π΅Π»Ρ‹Ρ… чисСл. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² UNIX дСскрипторы Ρ„Π°ΠΉΠ»ΠΎΠ² 0, 1 ΠΈ 2 ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ написании ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. НичСго ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ Π² Windows Π²Ρ‹ Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚Π΅.

МногиС ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠΉ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π³Ρ€Π°Π½ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π°ΠΌΠΈ процСссов ΠΈ дСскрипторами Ρ„Π°ΠΉΠ»ΠΎΠ², Π² Windows ΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ стСртыми. Π’ Windows ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΎΠ±Π΅ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ дСскрипторами Ρ‚ΠΈΠΏΠ° HANDLE. Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π²Π°ΠΆΠ½Ρ‹Ρ… функциях ΠΌΠΎΠ³ΡƒΡ‚ Π½Π°Ρ€Π°Π²Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ дСскрипторы Ρ„Π°ΠΉΠ»ΠΎΠ², процСссов, событий, ΠΊΠ°Π½Π°Π»ΠΎΠ² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ².

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚Π°ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅, работая Π² UNIX, ΠΏΡ€ΠΈΠ²Ρ‹ΠΊΠ»ΠΈ ΠΊ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΌ ΠΈΠΌΠ΅Π½Π°ΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΈ использовали прСимущСствСнно строчныС Π±ΡƒΠΊΠ²Ρ‹, придСтся ΠΏΡ€ΠΈΡΠΏΠΎΡΠ°Π±Π»ΠΈΠ²Π°Ρ‚ΡŒΡΡ ΠΊ Π±ΠΎΠ»Π΅Π΅ пространному ΡΡ‚ΠΈΠ»ΡŽ Windows. Π‘Ρ‚ΠΈΠ»ΡŒ Windows Π±Π»ΠΈΠ·ΠΎΠΊ ΠΊ ΡΡ‚ΠΈΠ»ΡŽ интСрфСйса ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Hewlett Packard (Ρ€Π°Π½Π΅Π΅ β€” DEC ΠΈ Compaq); программистам, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΌ с OpenVMS, ΠΌΠ½ΠΎΠ³ΠΎΠ΅ покаТСтся Π·Π½Π°ΠΊΠΎΠΌΡ‹ΠΌ. Π£ΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ сходство ΠΌΠ΅ΠΆΠ΄Ρƒ OpenVMS ΠΈ Windows частично ΠΎΠ±ΡŠΡΡΠ½ΡΠ΅Ρ‚ΡΡ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Дэвид ΠšΠ°Ρ‚Π»Π΅Ρ€ (David Cutler), ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ VMS, ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π», Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠ³Ρ€Π°Ρ‚ΡŒ Ρ‚Ρƒ ΠΆΠ΅ Ρ€ΠΎΠ»ΡŒ, Ρ‡Ρ‚ΠΎ ΠΈ NT ΠΈΠ»ΠΈ Windows.

Π Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ отличия ΠΊΠ°ΡΠ°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π½Π°ΠΊΠΎΠΌΠΎΠ³ΠΎ Π½Π°ΠΌ всСм понятия, ΠΊΠ°ΠΊ процСссы. Π’ Windows процСссы Π½Π΅ ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ свойствами наслСдования, хотя ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π·Π°Π΄Π°Π½ΠΈΠΉ.

Π’ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ слСдуСт ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² тСкстовых Ρ„Π°ΠΉΠ»Π°Ρ… Windows ΠΊΠΎΠ½Π΅Ρ† строки отмСчаСтся ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… символов CR-LF, Π° Π½Π΅ LF, ΠΊΠ°ΠΊ Π² это принято Π² UNIX. 

О цСлСсообразности привлСчСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ стандартной Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ C для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²

НСсмотря Π½Π° всю ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ возмоТностСй Windows, старый Π΄ΠΎΠ±Ρ€Ρ‹ΠΉ язык Π‘ ΠΈ Π΅Π³ΠΎ стандартная Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° ANSI Π‘ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΌΠΎΠ³ΡƒΡ‚ с успСхом ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π·Π°Π΄Π°Ρ‡, связанных с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ². ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘ (ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π° Π΅Π΅ соотвСтствиС стандарту ANSI Π‘ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ часто ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ) содСрТит большоС число ΠΎΡ‡Π΅Π½ΡŒ Π½ΡƒΠΆΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π°Π½Π°Π»ΠΎΠ³ΠΎΠ² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… срСди систСмных Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² Π½Π΅Ρ‚. К ΠΈΡ… числу относятся, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, описанныС Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»Π°Ρ… <string.h>, <stdlib.h> ΠΈ <signal.h>, Π° Ρ‚Π°ΠΊΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΈ символьного Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΊΠ°ΠΊ fopen ΠΈ fread, описанныС Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΡ‡Π½ΠΎΠΌ Ρ„Π°ΠΉΠ»Π΅ <stdio.h>, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… находятся Π±Π»ΠΈΠ·ΠΊΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΈΠΌ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹.

Π’ ΠΊΠ°ΠΊΠΈΡ… ΠΆΠ΅ случаях ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΠΎΠΉΡ‚ΠΈΡΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π‘, Π° Π² ΠΊΠ°ΠΊΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ систСмныС Π²Ρ‹Π·ΠΎΠ²Ρ‹ Windows? Π’ΠΎΡ‚ ΠΆΠ΅ вопрос ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ ΠΈ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ использования ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² (streams) Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° C++ ΠΈΠ»ΠΈ систСмы Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π°, которая прСдоставляСтся ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ .NET. ΠŸΡ€ΠΎΡΡ‚Ρ‹Ρ… ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² Π½Π° эти вопросы Π½Π΅ сущСствуСт, Π½ΠΎ Ссли Π²ΠΎ Π³Π»Π°Π²Ρƒ ΡƒΠ³Π»Π° ΠΏΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π½ΠΎΡΠΈΠΌΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹, ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΎΡ‚ Windows, Ρ‚ΠΎ Π² Ρ‚Π΅Ρ… случаях, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ трСбуСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Π½Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ процСссами ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ спСцифичСскиС возмоТности Windows, ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠ΅ слСдуСт ΠΎΡ‚Π΄Π°Π²Π°Ρ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ΅ Π‘ ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠ°ΠΌ Π²Π²ΠΎΠ΄Π°/Π²Ρ‹Π²ΠΎΠ΄Π° C++. ВмСстС с Ρ‚Π΅ΠΌ, ΠΌΠ½ΠΎΠ³ΠΈΠΌΠΈ программистами Ρ€Π°Π½Π΅Π΅ ΡƒΠΆΠ΅ дСлались ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π²Ρ‹Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ адСкватности использования Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π‘ Π² Ρ‚Π΅Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Ρ… случаях, ΠΈ эти ΠΆΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΡ‹ ΠΈ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ Windows. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ возмоТностСй Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ гибкости ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, обСспСчиваСмыС Windows, Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ оказываСтся Π±ΠΎΠ»Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΌ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ Π½Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π‘, Π² Ρ‡Π΅ΠΌ Π²Ρ‹ постСпСнно станСтС ΡƒΠ±Π΅ΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΡƒΠΆΠ΅ начиная с Π³Π»Π°Π²Ρ‹ 3. К числу возмоТностСй Windows, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π‘, относятся Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² (Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ΅ для раздСлСния ΠΎΠ±Ρ‰ΠΈΡ… областСй памяти), асинхронный Π²Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ² (4 Π“Π±Π°ΠΉΡ‚ ΠΈ Π²Ρ‹ΡˆΠ΅) ΠΈ взаимодСйствиС ΠΌΠ΅ΠΆΠ΄Ρƒ процСссами.

Π’ случаС простых ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π²Π°ΠΌ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΏΠΎΠ»Π½Π΅ достаточно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π‘, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Π’ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π²ΡˆΠΈΡΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ Π‘, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ пСрСносимоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π°ΠΆΠ΅ Π±Π΅Π· изучСния Windows, ΠΎΠ΄Π½Π°ΠΊΠΎ возмоТности Π²Ρ‹Π±ΠΎΡ€Π° ΠΏΡ€ΠΈ этом Π±ΡƒΠ΄ΡƒΡ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ. Π’Π°ΠΊ, Π² Π³Π»Π°Π²Π΅ 5 для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ упрощСния программирования ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΎΠ΄Π½Π°ΠΊΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π‘ Ρ‚Π°ΠΊΠΈΠ΅ возмоТности Π½Π΅ прСдоставляСт. 

Π§Ρ‚ΠΎ трСбуСтся для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠ½ΠΈΠ³ΠΎΠΉ

НиТС пСрСчислСно всС Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π°ΠΌ для создания ΠΈ выполнСния ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… Π² этой ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π³Π»Π°Π²Π°Ρ… ΠΊΠ½ΠΈΠ³ΠΈ.

РазумССтся, ΠΏΡ€Π΅ΠΆΠ΄Π΅ всСго, Π²Π°ΠΌ потрСбуСтся вСсь ваш ΠΎΠΏΡ‹Ρ‚ Π² области Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ; прСдполагаСтся Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ язык Π‘ Π²Π°ΠΌ Π·Π½Π°ΠΊΠΎΠΌ. Однако ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ Π±Ρ€Π°Ρ‚ΡŒΡΡ Π·Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΉ ΠΈ Ρ€Π°Π·Π±ΠΎΡ€ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ², Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ располагаСтС всСм Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌ Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌ обСспСчСниСм, ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ приводится Π½ΠΈΠΆΠ΅.

β€’ Π‘истСма с установлСнной ОБ Windows.