Π Π°Π±ΠΎΡ‚Π° с внСшними прилоТСниями Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ COM-соСдинСния Π² ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘:ΠŸΡ€Π΅Π΄ΠΏΡ€ΠΈΡΡ‚ΠΈΠ΅ 8.3 ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности для ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ, Π½ΠΎ часто становится источником ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈ администраторы рСгулярно ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с ситуациСй, ΠΊΠΎΠ³Π΄Π° Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Π΅ процСссы ragent.exe ΠΈΠ»ΠΈ rmngr.exe ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡ‚ΡŒ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ объСм ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти Π΄Π°ΠΆΠ΅ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ΄Π°.

ΠŸΡ€ΠΈΡ‡ΠΈΠ½Π° кроСтся Π² Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΆΠΈΠ·Π½Π΅Π½Π½Ρ‹ΠΌ Ρ†ΠΈΠΊΠ»ΠΎΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Если программист Π½Π΅ освободит явно созданный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, сборщик мусора .NET ΠΈΠ»ΠΈ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡ‹ Π½Π΅ смоТСт ΠΌΠ³Π½ΠΎΠ²Π΅Π½Π½ΠΎ Ρ€Π°Π·ΠΎΡ€Π²Π°Ρ‚ΡŒ связь с внСшним ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ Excel ΠΈΠ»ΠΈ Word. Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ зависанию процСссов, Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ, Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΈΡ‚ΠΎΠ³Π΅, ΠΊ падСнию сСрвСра ΠΏΠΎΠ΄ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ.

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

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² 1Π‘

ΠœΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ взаимодСйствия с COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π² 1Π‘ 8.3 базируСтся Π½Π° создании экзСмпляра внСшнСго прилоТСния Π²Π½ΡƒΡ‚Ρ€ΠΈ процСсса ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ сСрвСра. Когда Π²Ρ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ Новый COMΠžΠ±ΡŠΠ΅ΠΊΡ‚, ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Ρ€Π΅Π·Π΅Ρ€Π²ΠΈΡ€ΡƒΠ΅Ρ‚ рСсурсы ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы для поддСрТания этого ΠΊΠ°Π½Π°Π»Π° связи. Π‘Π΅Π· явного указания Π½Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² памяти.

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

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π½Π° сСрвСрС 1Π‘ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ наличия ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ прилоТСния (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Excel) Π½Π° сСрвСрС ΠΈ ΠΏΡ€Π°Π² Π½Π° Π΅Π³ΠΎ запуск ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ слуТбы 1Π‘. Π­Ρ‚ΠΎ создаСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΈ часто являСтся Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎΠΉ ошибкой.

Рассмотрим Π±Π°Π·ΠΎΠ²ΡƒΡŽ структуру создания ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ удалСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°. Π”Π°ΠΆΠ΅ Π² ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ΅ΠΌ сцСнарии ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… свойствах, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ссылку Π½Π° Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

  • πŸ”Ή COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ создаСтся Ρ‡Π΅Ρ€Π΅Π· конструктор Новый COMΠžΠ±ΡŠΠ΅ΠΊΡ‚("Π˜ΠΌΡΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.ΠžΠ±ΡŠΠ΅ΠΊΡ‚").
  • πŸ”Ή ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² свойства, Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Workbook Π²Π½ΡƒΡ‚Ρ€ΠΈ Application), создаСт Π½ΠΎΠ²ΡƒΡŽ ссылку.
  • πŸ”Ή ОсвобоТдСниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² порядкС, ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ созданию: ΠΎΡ‚ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΊ ΠΊΠΎΡ€Π½Π΅Π²Ρ‹ΠΌ.
πŸ’‘

ВсСгда ΡΡ‚Π°Ρ€Π°ΠΉΡ‚Π΅ΡΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ тяТСлыС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ Π² толстом ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ внСшнСм ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ основного сСрвСра 1Π‘.

Алгоритм ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠ³ΠΎ освобоТдСния рСсурсов

Для Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ закрытия соСдинСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ±Π»ΡŽΠ΄Π°Ρ‚ΡŒ ΡΡ‚Ρ€ΠΎΠ³ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ дСйствий. Π‘Π½Π°Ρ‡Π°Π»Π° ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ само ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°Ρ‚Π΅ΠΌ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ прилоТСния ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС этого ΠΎΠ±Π½ΡƒΠ»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΡΡΡ‹Π»Π°ΡŽΡ‰ΠΈΠ΅ΡΡ Π½Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Π΅ элСмСнты.

ИспользованиС конструкции ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°...Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ стандартом. Π’Π½Π΅ΡˆΠ½Π΅Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒΡΡ Π² процСссС Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΡƒΠΆΠ΅ Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±Π΅Π· ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ошибок ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π½ΠΈΡŽ выполнСния ΠΊΠΎΠ΄Π° 1Π‘.

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ°

// Π—Π°ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· сохранСния

COMΠžΠ±ΡŠΠ΅ΠΊΡ‚.Quit();

Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

// Π˜Π³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅ΠΌ ошибки закрытия, Ссли процСсс ΡƒΠΆΠ΅ ΠΌΠ΅Ρ€Ρ‚Π²

ΠšΠΎΠ½Π΅Ρ†ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠΈ;

// ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ освобоТдаСм ссылку

COMΠžΠ±ΡŠΠ΅ΠΊΡ‚ = НСопрСдСлСно;

Частой ошибкой являСтся Ρ€Π°Π±ΠΎΡ‚Π° с коллСкциями. Если Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ листов ΠΈΠ»ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠ², пСрСмСнная, хранящая эту ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΡŽ, Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±Π½ΡƒΠ»Π΅Π½Π°. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС сборщик мусора ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΡƒΡŽ ссылку ΠΈ Π½Π΅ станСт ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Ρ‚ΡŒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚.

β˜‘οΈ Π§Π΅ΠΊ-лист ΠΏΠΎ освобоТдСнию COM

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

Диагностика ΡƒΡ‚Π΅Ρ‡Π΅ΠΊ памяти ΠΈ Π·Π°Π²ΠΈΡΡˆΠΈΡ… процСссов

Как ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ соСдинСниС Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ? ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊΠΎΠΌ являСтся рост потрСблСния ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти процСссом 1C:Enterprise ΠΈΠ»ΠΈ ragent. Если послС выполнСния ΠΎΡ‚Ρ‡Π΅Ρ‚Π° ΠΏΠ°ΠΌΡΡ‚ΡŒ Π½Π΅ возвращаСтся ΠΊ исходным значСниям, скорСС всСго, Π³Π΄Π΅-Ρ‚ΠΎ ΠΎΡΡ‚Π°Π»Π°ΡΡŒ активная ссылка.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠ·Π½Π°ΠΊ β€” Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ мноТСства процСссов EXCEL.EXE ΠΈΠ»ΠΈ WINWORD.EXE Π² диспСтчСрС Π·Π°Π΄Π°Ρ‡ сСрвСра, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΈΡΡ‡Π΅Π·Π°ΡŽΡ‚ спустя нСсколько ΠΌΠΈΠ½ΡƒΡ‚ послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ. Π­Ρ‚ΠΈ процСссы находятся Π² состоянии Π·ΠΎΠΌΠ±ΠΈ ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ рСсурсы Π²ΠΏΡƒΡΡ‚ΡƒΡŽ.

Π‘ΠΈΠΌΠΏΡ‚ΠΎΠΌ ВСроятная ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ΠœΠ΅Ρ‚ΠΎΠ΄ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ
Рост памяти ragent.exe НС ΠΎΠ±Π½ΡƒΠ»Π΅Π½Π° пСрСмСнная ΠΊΠΎΠ»Π»Π΅ΠΊΡ†ΠΈΠΈ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Π»ΠΈΡˆΠ½ΠΈΡ… ссылок
Π€Π°ΠΉΠ» Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ ΠŸΡ€ΠΎΡ†Π΅ΡΡ Excel Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠ±ΠΈΡ‚ΡŒ процСсс Ρ‡Π΅Ρ€Π΅Π· скрипт
Ошибка "Π‘Π΅Ρ€Π²Π΅Ρ€ занят" ΠŸΡ€Π΅Π²Ρ‹ΡˆΠ΅Π½ Π»ΠΈΠΌΠΈΡ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… соСдинСний ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ°ΡƒΡ‚Ρ‹
МСдлСнная гСнСрация ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ экрана Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ свойство ScreenUpdating

Для Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠΉ диагностики ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ Process Explorer. Она позволяСт ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ Π΄Π΅Ρ€Π΅Π²ΠΎ процСссов ΠΈ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΎΠΉ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΠΎΡ‚ΠΎΠΊ 1Π‘ ΡƒΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ дСскриптор внСшнСго прилоТСния. Π­Ρ‚ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ½Ρ‹ΠΉ участок ΠΊΠΎΠ΄Π° Π² Π±ΠΎΠ»ΡŒΡˆΠΈΡ… конфигурациях.

πŸ“Š Как часто Π²Ρ‹ ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°Π΅Ρ‚Π΅ΡΡŒ с зависаниСм Excel ΠΏΡ€ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅ ΠΈΠ· 1Π‘?
Π•ΠΆΠ΅Π΄Π½Π΅Π²Π½ΠΎ
Раз в нСдСлю
Π Π΅Π΄ΠΊΠΎ
Никогда Π½Π΅ сталкивался

Π Π°Π±ΠΎΡ‚Π° с коллСкциями ΠΈ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ

НаиболСС ΠΊΠΎΠ²Π°Ρ€Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с COM-соСдинСниСм β€” это Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΉ сцСнарий Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠΈ Π² Excel выглядит Ρ‚Π°ΠΊ: ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ -> Книга -> Лист -> Π”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½. КаТдая стрСлка здСсь β€” это новая ссылка, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ Ρ€Π°Π·ΠΎΡ€Π²Π°Ρ‚ΡŒ.

Если Π²Ρ‹ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ Π² ΠΎΠ΄Π½Ρƒ строку, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ COMΠžΠ±ΡŠΠ΅ΠΊΡ‚.Workbooks.Add().Sheets(1).Range("A1").Value = "ВСкст", Π²Ρ‹ потСряСтС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹. ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° создаст Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ссылки, ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΎ.

⚠️ Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! Никогда Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ Π²Ρ‹Π·ΠΎΠ²ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² для получСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ ΠΈΠ»ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ явного освобоТдСния. ВсСгда сохраняйтС ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ Π΄Π΅ΠΊΠ»Π°Ρ€Π°Ρ†ΠΈΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ уровня влоТСнности. Π­Ρ‚ΠΎ Π΄Π΅Π»Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π±ΠΎΠ»Π΅Π΅ Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌ, Π½ΠΎ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ Π½Π°Π΄ ΠΏΠ°ΠΌΡΡ‚ΡŒΡŽ. ПослС использования Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° обнуляСм Π΅Π³ΠΎ, Π·Π°Ρ‚Π΅ΠΌ лист, Π·Π°Ρ‚Π΅ΠΌ ΠΊΠ½ΠΈΠ³Ρƒ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ структуры ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

ΠŸΠ΅Ρ€Π΅ΠΌ COMΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅; ΠŸΠ΅Ρ€Π΅ΠΌ COMКнига; ΠŸΠ΅Ρ€Π΅ΠΌ COMЛист; ΠŸΠ΅Ρ€Π΅ΠΌ COMΠ”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½; ... COMΠ”ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ = НСопрСдСлСно; COMЛист = НСопрСдСлСно; ...

Автоматизация очистки Ρ‡Π΅Ρ€Π΅Π· внСшниС скрипты

Π’ случаях, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ 1Π‘ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ процСсса (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎΠΌ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°), цСлСсообразно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшниС ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ очистки. Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ Π½Π° PowerShell ΠΈΠ»ΠΈ VBScript ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ зависшиС процСссы ΠΏΠΎ Ρ€Π°ΡΠΏΠΈΡΠ°Π½ΠΈΡŽ.

Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ являСтся "костылСм", Π½ΠΎ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ΅Π½Π΅ ΠΎΠ½ часто спасаСт сСрвСр ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ. Π‘ΠΊΡ€ΠΈΠΏΡ‚ провСряСт врСмя запуска процСсса Excel. Если процСсс ΠΆΠΈΠ²Π΅Ρ‚ дольшС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π»ΠΈΠΌΠΈΡ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, 10 ΠΌΠΈΠ½ΡƒΡ‚) ΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΎΠΊΠ½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΎΠ½ считаСтся зависшим.

$processes = Get-Process excel -ErrorAction SilentlyContinue

foreach ($process in $processes) {

if ($process.MainWindowHandle -eq 0) {

Stop-Process -Id $process.Id -Force

}

}

Π˜Π½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡ Ρ‚Π°ΠΊΠΎΠ³ΠΎ скрипта Π² ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Ρ‰ΠΈΠΊ Π·Π°Π΄Π°Ρ‡ Windows позволяСт ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ чистоту срСды выполнСния. Однако это Π½Π΅ отмСняСт нСобходимости ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ошибки Π² ΠΊΠΎΠ΄Π΅ самой ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ 1Π‘.

πŸ’‘

АвтоматичСская очистка процСссов β€” это ΠΌΠ΅Ρ€Π° послСднСй Π·Π°Ρ‰ΠΈΡ‚Ρ‹, Π° Π½Π΅ Π·Π°ΠΌΠ΅Π½Π° ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ освобоТдСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΊΠΎΠ΄Π΅ 1Π‘.

ΠžΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ΅

Помимо ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ закрытия, Π²Π°ΠΆΠ½ΠΎ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ врСмя ΠΆΠΈΠ·Π½ΠΈ соСдинСния. Π§Π΅ΠΌ дольшС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, Ρ‚Π΅ΠΌ Π²Ρ‹ΡˆΠ΅ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ сбоя. Одним ΠΈΠ· ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… ΠΏΡ€ΠΈΠ΅ΠΌΠΎΠ² ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ являСтся ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ обновлСния экрана ΠΈ автоматичСских вычислСний Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹.

Бвойство ScreenUpdating ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Application позволяСт Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ пСрСрисовку интСрфСйса Excel ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ячСйки. Π­Ρ‚ΠΎ ускоряСт Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΡƒ Π±ΠΎΠ»ΡŒΡˆΠΈΡ… массивов Π΄Π°Π½Π½Ρ‹Ρ… Π² дСсятки Ρ€Π°Π·. Аналогично Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ автоматичСского пСрСсчСта Ρ„ΠΎΡ€ΠΌΡƒΠ».

  • πŸš€ Установка COMΠžΠ±ΡŠΠ΅ΠΊΡ‚.ScreenUpdating = Π›ΠΎΠΆΡŒ ΠΏΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ записи Π΄Π°Π½Π½Ρ‹Ρ….
  • πŸš€ ΠžΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ отобраТСния ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠΉ Ρ‡Π΅Ρ€Π΅Π· DisplayAlerts = Π›ΠΎΠΆΡŒ.
  • πŸš€ Массовая запись Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΈΠΌ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ΠΎΠΌ вмСсто построчного Ρ†ΠΈΠΊΠ»Π°.

ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ всСх ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ настройки Π² исходноС состояниС, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ Ρ‚ΠΎΠ½Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сохраняСт ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ повСдСния систСмы для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ, Ссли ΠΌΠ΅Ρ‚ΠΎΠ΄ Quit() Π½Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Excel?

Если ΠΌΠ΅Ρ‚ΠΎΠ΄ Quit() Π½Π΅ срабатываСт, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ Π²Π²ΠΎΠ΄Π° ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΎ сохранСнии). Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ свойство DisplayAlerts установлСно Π² Π›ΠΎΠΆΡŒ. Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Π½Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ Π»ΠΈ Ρ„Π°ΠΉΠ» Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для чтСния Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ процСссами.

МоТно Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ COM Π½Π° Linux-сСрвСрС 1Π‘?

НСт, тСхнология COM являСтся ΠΏΡ€ΠΎΠΏΡ€ΠΈΠ΅Ρ‚Π°Ρ€Π½ΠΎΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Microsoft ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² срСдС Windows. На Linux-сСрвСрах 1Π‘ использованиС COM-ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. НСобходимо ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Ρ‹: Ρ„Π°ΠΉΠ»Ρ‹ CSV, XML, JSON ΠΈΠ»ΠΈ спСциализированныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с офисными Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ.

Как ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ ошибки "Π£Π΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ сСрвСр нСдоступСн"?

Π­Ρ‚Π° ошибка часто Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ Π½Π΅ΡΡ‚Π°Π±ΠΈΠ»ΡŒΠ½ΠΎΠΉ сСти. Π£Π±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π°Π²Π° доступа ΠΊ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° слуТба 1Π‘, ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½Ρ‹. Иногда ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ пСрСзапуск слуТбы ΠΈΠ»ΠΈ очистка ΠΏΠ°ΠΏΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

ВлияСт Π»ΠΈ Ρ€Π°Π·Ρ€ΡΠ΄Π½ΠΎΡΡ‚ΡŒ 1Π‘ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ COM?

Π”Π°, влияСт критичСски. Если Ρƒ вас установлСна 64-битная вСрсия 1Π‘, ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с 64-Π±ΠΈΡ‚Π½Ρ‹ΠΌΠΈ вСрсиями офисных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ 32-Π±ΠΈΡ‚Π½Ρ‹ΠΉ Excel ΠΈΠ· 64-Π±ΠΈΡ‚Π½ΠΎΠΉ 1Π‘ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ошибкС рСгистрации класса. Π‘Π»Π΅Π΄ΠΈΡ‚Π΅ Π·Π° соотвСтствиСм разрядности.

НуТно Π»ΠΈ Π·Π°ΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ соСдинСниС Π² управляСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…?

Π”Π°, ΠΏΡ€Π°Π²ΠΈΠ»Π° Ρ‚Π΅ ΠΆΠ΅ самыС. Π’ управляСмом ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ сСрвСра Π² зависимости ΠΎΡ‚ контСкста выполнСния. Если ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ создан Π½Π° сСрвСрС, ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠ΅Π½ Π½Π° сСрвСрС. НС ΠΏΠΎΠ»Π°Π³Π°ΠΉΡ‚Π΅ΡΡŒ Π½Π° Π°Π²Ρ‚ΠΎΠ·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ ΠΏΡ€ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΡ‹.