Перейти до основного
Підтримка
Вхід
Вхід за допомогою облікового запису Microsoft
Увійдіть або створіть обліковий запис.
Вітаємо,
Виберіть інший обліковий запис.
У вас є кілька облікових записів
Виберіть обліковий запис, за допомогою якого потрібно ввійти.

Причини

Розглянемо таку ситуацію:

  • Створення проекту Visual C++ у Microsoft Visual Studio 2008 з пакетом оновлень 1 (SP1).

  • Файл проекту, є вузьким рядок літералів. Ці літералів в рядку містять-азійські символи а не починаються з буквою "L.."

  • Рядок-літерали, використовувати кодування UTF-8.

У цьому випадку під час компіляції проекту, у рядку літералів є неправильно, компілятор. Крім того, у разі виникнення таких проблем:

  • Компіляція операцію завершено. Проте в рядку літералів відображаються неправильно згенерований програми. Крім того, також з'являється попередження про такі повідомлення при компіляції проекту:

    попередження C4566: символів, представлені універсальний символ ім'я "xx" не може бути представлений поточної кодової сторінки.

  • Не вдається виконати операцію компіляції. Крім того, може з'явитися таке повідомлення про помилку під час компіляції проекту:

    Помилка C2078: забагато типи

Причина

Ця проблема виникає, тому що компілятор припускається, що файл в розділі "Ознаки", має кодування MBCS кодування.. Унаслідок використання такого способу у compilerincorrectly переводиться на файл.

Вирішення

Відомості про виправлень

Виправлення доступне від корпорації Майкрософт. Проте, це виправлення призначене тільки для вирішення проблеми, описаної в цій статті. Застосовуйте це виправлення лише до систем, які зазнають цієї конкретної проблеми.

Якщо Виправлення доступне для завантаження, є розділ "Виправлення доступне для завантаження" на початку цієї статті бази знань. Якщо цей розділ не відображається, надішліть запит до клієнтської служби та підтримки Microsoft, щоб отримати виправлення.

Примітка. Якщо виникають додаткові проблеми, або потрібно виявлення проблем, можливо, доведеться створити окремий запит на обслуговування. Звичайні кошти на технічну підтримку будуть застосовуватися для додаткових питань і проблем, які не пов'язані з цим виправленням. Повний список телефонів служби підтримки користувачів і технічної підтримки, або створити окремий запит на обслуговування відвідайте веб-сайт корпорації Майкрософт:

http://support.microsoft.com/contactus/?ws=supportПримітка. У формі "Виправлення доступне для завантаження" відображається список мов, для яких це виправлення доступне. Якщо потрібна мова не відображається, то виправлення недоступне для даної мови.

Попередні вимоги

Потрібно мати Visual Studio 2008 з пакетом оновлень 1 (SP1) для застосування цього виправлення.

Необхідність перезавантаження

Вам не потрібно перезавантажити комп'ютер, після застосування цього виправлення, якщо використовується не екземпляр Visual Studio.

Відомості про заміну виправлень

Це виправлення не замінює інших виправлень.

Відомості про файли

Англійська версія цього виправлення на комп'ютері має атрибути файлів (або новіші атрибути файлів), подані в нижченаведеній таблиці. Значення дати й часу для цих файлів наведено за всесвітнім координованим часом (UTC). Переглядаючи відомості про файл, час конвертується у місцевий час. Щоб визначити різницю між UTC і місцевим часом, використайте вкладку Часовий пояс у Дата й час на панелі керування.

Ім'я файлу

Версія файлу

Розмір файлу

Дата

Час

Платформа

C1.dll

15.0.30729.4987

678,720

09-Mar-2010

10:18

x86

C1xx.dll

15.0.30729.4987

2,204,488

09-Mar-2010

10:18

x86

C1xx.dll

15.0.30729.4987

2,215,240

09-Mar-2010

10:18

x86

C1xx.dll

15.0.30729.4987

2,339,656

09-Mar-2010

10:18

x86

C1xx.dll

15.0.30729.4987

2,505,552

09-Mar-2010

10:18

x86

C1xx.dll

15.0.30729.4987

2,891,592

09-Mar-2010

10:18

x64

Стан

Корпорація Майкрософт підтвердила існування цієї неполадки у продуктах Майкрософт, перелічених у розділі "Застосовується до".

Додаткові відомості

Для виправлення цієї помилки в компілятора інсталювати це виправлення а потім збережіть файл із байт замовлення знак. Крім того, додайте такий директиви "pragma" рядок-літералів перед вихідний файл.

#pragma execution_character_set("utf-8")

Примітка. "Pragma" Директива встановлює пристрій варіант перекладу вихідного файлу, доки не замінюється інший "pragma"-директиви директиви "pragma".

Потрібна додаткова довідка?

Потрібні додаткові параметри?

Ознайомтеся з перевагами передплати, перегляньте навчальні курси, дізнайтесь, як захистити свій пристрій тощо.

Спільноти допомагають ставити запитання й відповідати на них, надавати відгуки та дізнаватися думки висококваліфікованих експертів.

Чи ця інформація була корисною?

Наскільки ви задоволені якістю мови?
Що вплинуло на ваші враження?
Натиснувши кнопку "Надіслати", ви надасте свій відгук для покращення продуктів і служб Microsoft. Ваш ІТ-адміністратор зможе збирати ці дані. Декларація про конфіденційність.

Дякуємо за відгук!

×