Outlook 2010 не правильно отображает кодировку сообщений.

Иногда пользователи жалуются на то, что в полученных сообщениях появляются «кракозябры», некорректно отображаемые символы. На самом деле Outlook показывает содержимое письма в кодировке KOI-8, как будто это кодировка Windows 1251. Для устранения проблемы  можно  изменить кодировку в сообщении на KOI-8, но  к сожалению,  не все пользователи знают про эту возможность  и заваливают службу HelpDesk звонками. Причиной такого поведения Outlook является ошибка в Microsoft Exchange Server 2010.

Она возникает при совпадении четырех условий:

  1. Версия Exchange Server 2010 SP1 RU3 или более поздняя.
  2. К сообщению приложен файл.
  3. Тема сообщения содержит русские кавычки — ёлочки   ( « » ) .
  4. Тело сообщения на русском языке в кодировке KOI8-R.

С одной стороны вероятность совпадения всех условий довольно низка, с другой стороны, резюме в компании или приглашения на курсы рассылаются именно таким способом. Создается письмо, в тему добавляется в кавычках-ёлочках название позиции или курса обучения и прикладывается резюме или описание курса. Получатель получит «поврежденное» сообщение.

Даже если  установить внутри организации кодировку  по умолчанию UTF-8 и тогда проблема исчезнет для пользователей огранизации Exchange, но если письмо поступит из Интернета в кодировке KOI-8 одному пользователюи и будет переслано другому пользователю вашей организации, то кодировка этого письма останется KOI-8 и получатель все равно увидит «кракозябры» в письме.

Данная проблема решена в Exchange Server 2010 Service Pack 2 Rollup 1. Более детально о проблеме можно почитать на сайте Микрософт.

Related Posts

This Post Has 19 Comments

  1. Обсуждение темы:
    http://social.technet.microsoft.com/Forums/ru-RU/exchange2010ru/thread/428565d8-0367-45fc-8ead-be1fd676c277
    http://social.technet.microsoft.com/Forums/ru/msoclientru/thread/307123c1-a75b-4c54-8109-cfc5ae274e86

    PS: Опытным путём было установлено, что сам Exchange переделывал заголовки письма, всегда выставляя кодировку win-1251.

    Методика проверки:
    — Ставим в лабе Exchange 2010 SP2, настраиваем SMTP-коннекторы на отправку;
    — Отправляем письмо на внешний SMTP с доступом к серверу через POP3;
    — Забираем отправленное письмо любым клиентом, с возможностью посмотреть заголовки письма;
    — Смотрим заголовки письма — кодировка win-1251, вне зависимости от реальной кодировки. 
    Реально проблема скорее всего в целом ряде факторов, а именно:
    — при добавление кавычек типа «ёлочка», которые кстати добавить не так просто, Outlook переделывает заголовок в кодировку win-1251, оставляя тело письма в старой кодировке;
    — Клиент получает письмо, читает заголовки, читает, что кодировка win-1251, проверяет тему — win-1251, значит письмо нужно отображать в win-1251

      Но реально тело в koi-8, UTF-8 и т.д.

  2. Outlook при форварде писем кодировку не переделывает, даже если в нем политикой прописано. Отсюда и проблема, что письмо снаружи форвардится сотрудникам внутри, в него добавляется файл и опа — кракозябры.

  3. Речь была про корень проблемы, а именно: исконно некорректное формирование заголовков на уровне Exchange. Если быть точнее, то он по шаблону «ляпал» всем письмам на кирилице win-1251.

    Остальное лишь следствия, проявления бага.

  4. А какую кодировку вообще луче использовать в Exchange Server?
    интересует «Best Practices», а не теория (в теории видимо лучше UTF-8) в котором наименьшее количество проблем у пользователей
    win-1251? KOI8-r? UTF-8?
    заранее спасибо

    1. «Best Practices» это как раз кодировка, которая работает с большинством клиентов, с которыми обмениваюся электронной почты сотрудники вашей компании.
      В моей компании установлена UTF-8.
      У MS я таких рекомендаций не встречал.

  5. А я уже и rollup 2 поставил, но проблема опять всплыла неожиданно. Директор форвардит письма из gmail, приходят кракозябры в теле. Похоже что ему приходят письма в win-1251, при пересылке от него в заголовках написано KOI8-R, а в outlook в свойствах письма стоит UTF-8. Если кракозябры проверить в декодере Лебедева, то показывает путь win-1251 — utf-8.

  6. Нет, нет кавычек и №. Нагуглил, что у устройств Apple есть глюк с кракозябрами, когда форвардят письмо через gmail-аккаунт, то получатели такого письма видят бяку, у директора как раз ipad. Буду по советам настраивать gmail-аккаунт по imap.

  7. У меня Exchange 2010 ru 14.03.0158.001на SBS 2011
    Этот апдейт не устанавливается — говорит, что для другой версии.
    У клиента настроил Outlook 2007 на отправку писем в кодировке UTF8 — вроде теперь нормально уходит..

Добавить комментарий