Здравствуйте, Коллеги!
Разработал скрипт для мониторинга серверов 1С через COM на Powershell.
Столкнулся со следующей проблемой:
1. На сервере Windows Server 2016 работает все отлично;
2. На сервере Windows 2012 R2 проблемы с кодировкой;
Для Instance Discovery сделал функцию, которая выдает список кластеров 1С. На 2012R2 получаю кракозябры при этом на 2016 проблем нет.
В самом скрипте есть следующая строка определяющаю кодировку вывода:
[Console]::OutputEncoding = [System.Text.Encoding]::GetEncoding("windows-1251")
Пробовал менять кодировки, пробовал конвертировать сам текст в разные кодировки и разные комбинации с кодировкой вывода - разультат отрицательный.
Куда дальше копать не знаю. Может у кого-то есть идеи?
			
			
			
				А какая стоит системная кодировка на этой машине (code page for non-UNICODE programs вроде называлось)?
			
			
			
				Русский (см. вложение)
			
			
			
				А если вы запускаете этот скрипт просто из консоли на 2012 R2, то вывод правильный, без кракозябр?
			
			
			
				Правильный, только надо шрифт изменить.
			
			
			
				На какой именно?
			
			
			
				Попробуйте обновить агент до версии 3.4.310 и поменять кодировку скрипта на UTF-8.
			
			
			
				Спасибо! Попробую - отпишусь!
			
			
			
				попробуйте так
[Text.Encoding]::UTF8
у меня работает , где надо указываю переменную
$En = [Text.Encoding]::UTF8