NetXMS Support Forum

Russian Support => Общие вопросы => Topic started by: Evgeniy Skoropadskiy on June 29, 2020, 12:12:38 PM

Title: ExternalList, Powershell и 1C (кодировка)
Post by: Evgeniy Skoropadskiy on June 29, 2020, 12:12:38 PM
Здравствуйте, Коллеги!

Разработал скрипт для мониторинга серверов 1С через COM на Powershell.
Столкнулся со следующей проблемой:
1. На сервере Windows Server 2016 работает все отлично;
2. На сервере Windows 2012 R2 проблемы с кодировкой;

Для Instance Discovery сделал функцию, которая выдает список кластеров 1С. На 2012R2 получаю кракозябры при этом на 2016 проблем нет.
В самом скрипте есть следующая строка определяющаю кодировку вывода:
[Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("windows-1251")

Пробовал менять кодировки, пробовал конвертировать сам текст в разные кодировки и разные комбинации с кодировкой вывода - разультат отрицательный.

Куда дальше копать не знаю. Может у кого-то есть идеи?
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Victor Kirhenshtein on June 29, 2020, 03:59:25 PM
А какая стоит системная кодировка на этой машине (code page for non-UNICODE programs вроде называлось)?
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Evgeniy Skoropadskiy on June 29, 2020, 04:42:55 PM
Русский (см. вложение)
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Filipp Sudanov on July 03, 2020, 12:02:18 PM
А если вы запускаете этот скрипт просто из консоли на 2012 R2, то вывод правильный, без кракозябр?
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Evgeniy Skoropadskiy on July 03, 2020, 05:06:31 PM
Правильный, только надо шрифт изменить.
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Filipp Sudanov on July 03, 2020, 05:17:32 PM
На какой именно?
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Victor Kirhenshtein on August 11, 2020, 12:13:06 PM
Попробуйте обновить агент до версии 3.4.310 и поменять кодировку скрипта на UTF-8.
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: Evgeniy Skoropadskiy on August 11, 2020, 01:17:36 PM
Спасибо! Попробую - отпишусь!
Title: Re: ExternalList, Powershell и 1C (кодировка)
Post by: TOLeg on August 21, 2020, 03:23:14 PM
попробуйте так
[Text.Encoding]::UTF8

у меня работает , где надо указываю переменную
$En = [Text.Encoding]::UTF8