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

ПониманиС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Ρ‹ этого ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° критичСски Π²Π°ΠΆΠ½ΠΎ для Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² слоТных систСм, Π³Π΄Π΅ 1Π‘ выступаСт Π² Ρ€ΠΎΠ»ΠΈ бэкСнда ΠΈΠ»ΠΈ сСрвСра бизнСс-Π»ΠΎΠ³ΠΈΠΊΠΈ. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ настройка ΠΏΡ€Π°Π² доступа ΠΈΠ»ΠΈ вСрсий ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ соСдинСниС просто Π½Π΅ установится, Π° систСма выдаст cryptic ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΎ нСизвСстном классС. Π”Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎ ΠΈ бСзопасно.

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ COM Π² экосистСмС 1Π‘

ВСхнология Component Object Model (COM) прСдставляСт собой стандарт Microsoft для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Π’ контСкстС 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ComConnector выступаСт Π² Ρ€ΠΎΠ»ΠΈ "моста", ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ экспортируСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π²ΠΎ внСшнюю срСду. Когда внСшний ΠΊΠ»ΠΈΠ΅Π½Ρ‚ ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΡƒΠ΅Ρ‚ соСдинСниС, ΠΎΠ½ фактичСски Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρƒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы созданиС экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ CLSID.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ рСгистрируСт свои COM-классы Π² систСмном рССстрС Windows. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π²Π½Π΅ΡˆΠ½Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ устройство Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ прямой доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ. Достаточно Π·Π½Π°Ρ‚ΡŒ интСрфСйс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ ΠΈΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€Π°Π²Π° Π½Π° Π΅Π³ΠΎ созданиС. Однако здСсь кроСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠΎΠ΄Π²ΠΎΠ΄Π½Ρ‹ΠΉ камСнь: Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ процСссов.

Если ваша внСшняя ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° являСтся 32-разрядной, Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° 1Π‘ установлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² 64-разрядной вСрсии (ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚), соСдинСниС ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½Π΅ удастся. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Π°Ρ систСма просто Π½Π΅ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ Π½ΡƒΠΆΠ½Ρ‹ΠΉ COM-сСрвСр Π² рССстрС ΠΈΠ·-Π·Π° изоляции Π²Π΅Ρ‚ΠΎΠΊ Wow6432Node. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ шагом всСгда Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ свСрка Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½Ρ‹Ρ… разрядностСй ΠΎΠ±ΠΎΠΈΡ… участников ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ (RDP) ΠΏΡ€Π°Π²Π° Π½Π° созданиС COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΏΡ€Π°Π² локального ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ слуТба 1Π‘ запускаСтся ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€Π°Π²Π° Π½Π° взаимодСйствиС с Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌ столом, Ссли ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π΅ΠΆΠΈΠΌ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.
ВСхничСскиС Π΄Π΅Ρ‚Π°Π»ΠΈ рСгистрации COM-сСрвСра

ΠŸΡ€ΠΎΡ†Π΅ΡΡ рСгистрации происходит автоматичСски ΠΏΡ€ΠΈ установкС ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ запускС консольного прилоТСния 1Π‘ с ΠΊΠ»ΡŽΡ‡ΠΎΠΌ /COMServer. Π’ рССстр Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΏΡƒΡ‚ΠΈ ΠΊ исполняСмым Ρ„Π°ΠΉΠ»Π°ΠΌ rmngr.exe ΠΈΠ»ΠΈ rphost.exe Π² зависимости ΠΎΡ‚ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹ кластСра сСрвСров.

Настройка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Π²Ρ‹Π±ΠΎΡ€ Ρ€Π΅ΠΆΠΈΠΌΠ° Ρ€Π°Π±ΠΎΡ‚Ρ‹

БущСствуСт нСсколько способов ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ соСдинСниС Ρ‡Π΅Ρ€Π΅Π· ComConnector, ΠΈ Π²Ρ‹Π±ΠΎΡ€ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° зависит ΠΎΡ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹ вашСго Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. НаиболСС распространСнный сцСнарий β€” это использованиС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° V83.COMConnector Π²Π½ΡƒΡ‚Ρ€ΠΈ самой 1Π‘ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π±Π°Π·Π΅, Π»ΠΈΠ±ΠΎ использованиС внСшнСго скрипта для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π±Π°Π·Π΅.

Для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈΠ· внСшнСй срСды (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· VBScript ΠΈΠ»ΠΈ PowerShell) Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ строку соСдинСния, которая ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ Π±Π°Π·Π΅ ΠΈ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. Если Π² Π±Π°Π·Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° бСзопасная Ρ€Π°Π±ΠΎΡ‚Π°, потрСбуСтся Π²Π²ΠΎΠ΄ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ пароля.

Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания соСдинСния Ρ‡Π΅Ρ€Π΅Π· PowerShell. Π­Ρ‚ΠΎΡ‚ способ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ систСмными администраторами для Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€ΡƒΡ‚ΠΈΠ½Π½Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΈΠ»ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² Π±Π΅Π· запуска тяТСлого интСрфСйса.

$connector = New-Object -ComObject V83.COMConnector

$ibase = $connector.Connect("Srvr="localhost";Ref="MyBase";Usr="Admin";Pwd="123"")

Π’ Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠ΄Π΅ ΠΌΡ‹ создаСм экзСмпляр COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΌΠ΅Ρ‚ΠΎΠ΄ Connect, пСрСдавая Π΅ΠΌΡƒ строку ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° экранированиС ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ Π² строкС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ β€” это частая ошибка, приводящая ΠΊ сбою парсинга ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². ПослС ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ выполнСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ $ibase Π±ΡƒΠ΄Π΅Ρ‚ присвоСн ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌ глобального контСкста 1Π‘.

πŸ’‘

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ ΠΈΠ»ΠΈ сСрвисныС ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ для скриптов Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ. Никогда Π½Π΅ Ρ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ администраторов Π² ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌ Π²ΠΈΠ΄Π΅ Π² Ρ„Π°ΠΉΠ»Π°Ρ… скриптов.

Π Π°Π±ΠΎΡ‚Π° с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· внСшний интСрфСйс

ПослС установлСния соСдинСния Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ доступ ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ 1Π‘. Однако стоит ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ограничСния: Π²Ρ‹ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ ΠΎΠ±Ρ€Π°Ρ‰Π°Ρ‚ΡŒΡΡ ΠΊ Ρ„ΠΎΡ€ΠΌΠ°ΠΌ ΠΈΠ»ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌ элСмСнтам, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ COM-соСдинСниС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Π½Π΅ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅ (Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… настроСк). Π’Π°ΡˆΠ° Ρ€Π°Π±ΠΎΡ‚Π° Π±ΡƒΠ΄Π΅Ρ‚ сосрСдоточСна Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…, запускС ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ сцСнарий Ρ€Π°Π±ΠΎΡ‚Ρ‹ выглядит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ…, созданиС экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Π²Ρ‹Π·ΠΎΠ² Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ². НапримСр, для создания Π½ΠΎΠ²ΠΎΠ³ΠΎ элСмСнта справочника "НомСнклатура" ΠΈΠ· внСшнСго прилоТСния потрСбуСтся Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΡƒΡŽ написанию ΠΊΠΎΠ΄Π° Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ‚ΠΎΡ€Π°.

  • πŸ”Ή ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Π° справочника Ρ‡Π΅Ρ€Π΅Π· свойство ΠœΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Π΅.
  • πŸ”Ή Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΠžΠ±ΡŠΠ΅ΠΊΡ‚() ΠΈΠ»ΠΈ Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒ().
  • πŸ”Ή Π—Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅ΠΊΠ²ΠΈΠ·ΠΈΡ‚ΠΎΠ² (НаимСнованиС, Артикул, Π•Π΄ΠΈΠ½ΠΈΡ†Π° измСрСния).
  • πŸ”Ή Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Π—Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ() для сохранСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ….

Одной ΠΈΠ· особСнностСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ Ρ‡Π΅Ρ€Π΅Π· ComConnector являСтся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΡΡ‚ΡŒ явного управлСния транзакциями. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ встроСнного ΠΊΠΎΠ΄Π°, Π³Π΄Π΅ транзакция ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСявной, ΠΏΡ€ΠΈ внСшнСм Π²Ρ‹Π·ΠΎΠ²Π΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π»ΡƒΡ‡ΡˆΠ΅ ΠΎΠ±ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Ρ‚ΡŒ Π² Π±Π»ΠΎΠΊΠΈ ΠΠ°Ρ‡Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ() ΠΈ Π—Π°Ρ„ΠΈΠΊΡΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΠ’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΡŽ(). Π­Ρ‚ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ… Π² случаС сбоя сСтСвого соСдинСния ΠΈΠ»ΠΈ ошибки Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ скрипта.

Π’Π°ΠΊΠΆΠ΅ стоит ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎ Ρ€Π°Π±ΠΎΡ‚Π΅ с пСрСчислСниями. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ пСрСчислСний ΠΈΠ· внСшнСй срСды часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. РСкомСндуСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΡ… Π² Π²ΠΈΠ΄Π΅ строк с использованиСм ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΡ.ВидыНомСнклатуры.Π’ΠΎΠ²Π°Ρ€, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ числовыС прСдставлСния, Ссли это допустимо Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°.

πŸ’‘

ВсС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· COM Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ. Π”Π»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ 1Π‘, поэтому ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСмя удСрТания Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΎΠΊ.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹Π΅ ошибки ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΠΈΡ… устранСния

Настройка ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Ρ€Π΅Π΄ΠΊΠΎ ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ Π³Π»Π°Π΄ΠΊΠΎ с ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Ρ€Π°Π·Π°. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с рядом стандартных ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‡Π΅Ρ‚ΠΊΠΈΠ΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ возникновСния. Бамая популярная ΠΈΠ· Π½ΠΈΡ… β€” "Класс Π½Π΅ зарСгистрирован" (error 0x80040154). Π­Ρ‚Π° ошибка ΠΏΠΎΡ‡Ρ‚ΠΈ всСгда ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° нСсоотвСтствиС разрядности процСссов ΠΈΠ»ΠΈ отсутствиС ΠΏΡ€Π°Π² Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ рССстра.

Другая распространСнная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° β€” "Π‘Π΅Ρ€Π²Π΅Ρ€ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½". Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ, Ссли слуТба Π°Π³Π΅Π½Ρ‚Π° сСрвСра 1Π‘ остановлСна, ΠΈΠ»ΠΈ Ссли Π² строкС ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Π½ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ адрСс кластСра. Π’ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ошибка ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ ΠΈΠ·-Π·Π° монопольной Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ Π±Π°Π·Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΠΌ процСссом.

Код ошибки ОписаниС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ВСроятная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° Бпособ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
0x80040154 Класс Π½Π΅ зарСгистрирован НСсоотвСтствиС x86/x64 Π—Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ скрипт Π² Ρ‚ΠΎΠΉ ΠΆΠ΅ разрядности, Ρ‡Ρ‚ΠΎ ΠΈ 1Π‘
0x80004005 НСвСрная строка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Ошибка синтаксиса строки ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ экранированиС ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»Π΅ΠΉ
0x800401A6 НСдостаточно памяти Π£Ρ‚Π΅Ρ‡ΠΊΠ° рСсурсов COM Π―Π²Π½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ (Nothing / null)
0x800401F0 Ошибка ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ COM COM Π½Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ Π² ΠΏΠΎΡ‚ΠΎΠΊΠ΅ Π’Ρ‹Π·Π²Π°Ρ‚ΡŒ CoInitialize ΠΏΠ΅Ρ€Π΅Π΄ созданиСм ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°

ΠŸΡ€ΠΈ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠΈ ошибки "НСдостаточно памяти" часто Π²ΠΈΠ½ΠΎΠ²Π°Ρ‚ΠΎ Π½Π΅ отсутствиС ΠžΠ—Π£, Π° Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ΅ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΆΠΈΠ·Π½ΠΈ COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ языках Ρ‚ΠΈΠΏΠ° C# ΠΈΠ»ΠΈ VBScript Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ явно ΠΎΠ±Π½ΡƒΠ»ΡΡ‚ΡŒ ссылки Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π½ΠΈΠΌΠΈ. Π’.NET срСдС ΠΏΠΎΠ»Π΅Π·Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Marshal.ReleaseComObject для форсированного освобоТдСния рСсурсов.

πŸ“Š Π‘ ΠΊΠ°ΠΊΠΎΠΉ ошибкой ΠΏΡ€ΠΈ настройкС ComConnector Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π»ΠΈΡΡŒ Ρ‡Π°Ρ‰Π΅ всСго?
Класс Π½Π΅ зарСгистрирован
ΠžΡ‚ΠΊΠ°Π·Π°Π½ΠΎ Π² доступС
НСвСрная строка ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ
Π― Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽ ComConnector

Вопросы бСзопасности ΠΈ Ρ€Π°Π·Π³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π°Π²

ИспользованиС COM-соСдинСния ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠΉ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ прСдприятия, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ вопросы бСзопасности ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π½Ρ‹ΠΌΠΈ. УчСтная запись, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ для ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ минимально Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΏΡ€Π°Π²Π°. НС стоит ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΏΠΎΠ»Π½Ρ‹ΠΌΠΈ ΠΏΡ€Π°Π²Π°ΠΌΠΈ администратора для простой Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ прайс-листа.

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

Π’Π°ΠΊΠΆΠ΅ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ сСтСвыС настройки. Если соСдинСниС происходит ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎ, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΡ€Ρ‚Ρ‹ кластСра сСрвСров 1Π‘ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ 1540-1541 ΠΈ динамичСскиС ΠΏΠΎΡ€Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… процСссов) ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ Π² брандмауэрС. Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ сСти ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΎΡ€Π²Π°Ρ‚ΡŒ соСдинСниС Π΅Ρ‰Π΅ Π΄ΠΎ этапа Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅: Π˜Π½Ρ‚Π΅Ρ€Ρ„Π΅ΠΉΡ COM Π½Π΅ ΡˆΠΈΡ„Ρ€ΡƒΠ΅Ρ‚ Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… Ρ‡Π΅Ρ€Π΅Π· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Π΅ сСти рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ VPN-Ρ‚ΡƒΠ½Π½Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±ΠΌΠ΅Π½ Ρ‡Π΅Ρ€Π΅Π· Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Π΅ Π²Π΅Π±-сСрвисы вмСсто прямого COM-ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ.

Π‘Ρ€Π°Π²Π½Π΅Π½ΠΈΠ΅ ComConnector с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠΌΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ

Π₯отя ComConnector являСтся классичСским инструмСнтом, Π² соврСмСнной Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ 1Π‘ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹. Π’Ρ‹Π±ΠΎΡ€ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°: скорости, надСТности ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Для Π½ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² часто рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTP-сСрвисы ΠΈΠ»ΠΈ Π²Π΅Π±-сСрвисы (SOAP/WSDL).

Π’Π΅Π±-сСрвисы ΠΎΠ±Π»Π°Π΄Π°ΡŽΡ‚ прСимущСством кроссплатформСнности: ΠΊ Π½ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒΡΡ ΠΈΠ· Linux, macOS ΠΈΠ»ΠΈ любого устройства с Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ COM ТСстко привязан ΠΊ экосистСмС Windows. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Π΅Π±-сСрвисы Π»Π΅Π³Ρ‡Π΅ ΠΌΠ°ΡΡˆΡ‚Π°Π±ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· балансировщики Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ COM-соСдинСниС часто привязано ΠΊ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌΡƒ Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌΡƒ процСссу сСрвСра 1Π‘.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ComConnector сохраняСт свои ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π² Π·Π°Π΄Π°Ρ‡Π°Ρ… Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… мСстах администраторов ΠΈ Π² сцСнариях, Π³Π΄Π΅ трСбуСтся Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ΅ взаимодСйствиС с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ модСлью 1Π‘ "ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈ" Π±Π΅Π· написания Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΉ Π½Π° сторонС сСрвСра. Π‘ΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΡ‚ΠΈΠΏΠ° Π½Π° COM часто Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ настройка ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½ΠΎΠ³ΠΎ API.

  • πŸš€ COM: Быстрый старт, глубокая интСграция, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Windows.
  • 🌐 HTTP/JSON: ΠšΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ, Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ, Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ написания ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ².
  • πŸ“¦ SOAP: Бтрогая типизация, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° старых ΠΊΠΎΡ€ΠΏΠΎΡ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… стандартов, ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ°.

Если Π²Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ этими тСхнологиями для долгосрочного ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, ΠΎΡ†Π΅Π½ΠΈΡ‚Π΅ ΠΊΠ²Π°Π»ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ трСбования Π·Π°ΠΊΠ°Π·Ρ‡ΠΈΠΊΠΎΠ². Для Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ Π² ΠΏΠ°Ρ€ΠΊΠ΅ Windows-машин COM остаСтся ΠΎΡ‚Π»ΠΈΡ‡Π½Ρ‹ΠΌ Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ. Для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ с внСшними сайтами ΠΈΠ»ΠΈ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌΠΈ прилоТСниями Π»ΡƒΡ‡ΡˆΠ΅ ΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π² сторону REST API.

β˜‘οΈ План внСдрСния ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ: 0 / 5

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы (FAQ)

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ComConnector Π² ΠΎΠ±Π»Π°Ρ‡Π½ΠΎΠΉ вСрсии 1Π‘ (1Π‘:Π›ΠΈΠ½ΠΊ)?

НСт, Π² ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹Ρ… сСрвисах Ρ‚ΠΈΠΏΠ° 1Π‘:Π›ΠΈΠ½ΠΊ ΠΈΠ»ΠΈ 1Π‘:Π€Ρ€Π΅Ρˆ прямой доступ ΠΏΠΎ COM ΠΈΠ·Π²Π½Π΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΎΠΉ бСзопасности ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π°. Для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ Π² ΠΎΠ±Π»Π°ΠΊΠ΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTP-сСрвисы ΠΈΠ»ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Ρ‡Π΅Ρ€Π΅Π· Ρ„Π°ΠΉΠ»Ρ‹/Π²Π΅Π±-сСрвисы, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ настройками Π°Ρ€Π΅Π½Π΄Ρ‹.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ соСдинСниС Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ локально, Π½ΠΎ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΈ запускС ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ слуТбы?

Π‘Π»ΡƒΠΆΠ±Ρ‹ Windows ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ΡΡ Π² сСансС 0, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ интСрфСйса ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ доступ ΠΊ рССстру Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ COM Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π»ΠΈΠ±ΠΎ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ слуТбу Π½Π° запуск ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с ΠΏΡ€Π°Π²Π°ΠΌΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ Π²Ρ…ΠΎΠ΄Π°, Π»ΠΈΠ±ΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ COM-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ рССстра HKEY_LOCAL_MACHINE.

Как ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ структуру ΠΈΠ»ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· COM?

ΠŸΡ€ΡΠΌΠ°Ρ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° слоТных Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½Π° Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… языках. РСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄: ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² строку Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° JSON ΠΈΠ»ΠΈ XML Π²Π½ΡƒΡ‚Ρ€ΠΈ 1Π‘ ΠΏΠ΅Ρ€Π΅Π΄ Π²ΠΎΠ·Π²Ρ€Π°Ρ‚ΠΎΠΌ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ сторонС, Π»ΠΈΠ±ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ массивы Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² (Variant Array), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ COM-ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².

ВлияСт Π»ΠΈ вСрсия ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ 1Π‘ Π½Π° ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ComConnector?

Π”Π°, интСрфСйс COM ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ°ΠΆΠΎΡ€Π½Ρ‹ΠΌΠΈ вСрсиями ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹. Π₯отя обратная ΡΠΎΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ сохраняСтся, использованиС Π½ΠΎΠ²Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², ΠΏΠΎΡΠ²ΠΈΠ²ΡˆΠΈΡ…ΡΡ Π² вСрсии 8.3.20, Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ вСрсии 8.3.10. ΠšΠ»ΠΈΠ΅Π½Ρ‚ ΠΈ сСрвСр Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ совмСстимы ΠΏΠΎ ΡƒΡ€ΠΎΠ²Π½ΡŽ API.