Обновление для распространяемого пакета Microsoft Visual C++ 2012 Update 4


В этой статье описывается ошибка времени выполнения, которые могут возникнуть при построении приложения Visual C++. Доступно обновление для устранения этой проблемы. Дополнительные сведения об этой проблеме обратитесь к разделу «об этой проблеме».

Симптомы


При построении приложения Visual C++ с помощью Visual Studio 2012 обновления 1 или более поздней версии приложение может возникнуть следующее сообщение об ошибке во время выполнения:

Не удалось найти точку входа процедуры crtCreateSymbolicLinkW в библиотеке динамической компоновки MSVCR110.dll

Эта проблема возникает только в том случае, если выполняются следующие условия:

  • Приложение использует некоторые функции из библиотеки стандартных шаблонов C++.
  • Во время выполнения в приложении используется Библиотека времени выполнения C (Msvcr110.dll) от RTM-версии продукта. Это может произойти в некоторых случаях, даже если продукт был создан с использованием более поздней версии Visual Studio 2012 и должен загрузить новую библиотеку DLL.

Причина


Данная проблема возникает из-за отсутствия в Библиотеке времени выполнения (Msvcr110.dll) следующие экспортируемые функции:

  • __crtCreateSemaphoreExW
  • __crtCompareStringEx
  • __crtCreateSymbolicLinkW
  • __crtEnumSystemLocalesEx
  • __crtFlsAlloc
  • __crtFlsFree
  • __crtFlsGetValue
  • __crtFlsSetValue
  • __crtGetDateFormatEx
  • __crtGetLocaleInfoEx
  • __crtGetTimeFormatEx
  • __crtGetUserDefaultLocaleName
  • __crtInitializeCriticalSectionEx
  • __crtIsValueLocaleName
  • __crtLCMapStringEx
  • __crtSetThreadStackGuarantee

Решение


Центра обновления Windows

Чтобы устранить эту проблему, установите это обновление, доступное из Центра обновления Windows.

Об этой проблеме

Эта проблема решена в 1 обновление для Visual Studio 2012. Данная версия содержит правильный DLL во время выполнения. Также был выпущен соответствующий распространения Visual C++. Приложения, созданные с помощью данного обновления или последующими обновлениями Visual Studio 2012 и с помощью библиотек времени выполнения C++ из более новое обновление должно работать должным образом.

Тем не менее даже при создании приложения с помощью Visual Studio 2012 обновлений может появиться ошибка Если приложений, запущенных на компьютере пользователя по-прежнему используют библиотек времени выполнения C++ из Visual Studio 2012 RTM. Для устранения этой проблемы корпорация Майкрософт выпустила библиотек времени выполнения C++ из Visual Studio 2012 обновление 4 (последние обновления для Visual Studio 2012) через Центр обновления Майкрософт.

Дополнительные сведения о Visual Studio 2012 обновление 4 Описание из Visual Studio 2012 обновление 4см.

Известные проблемы этого обновления

  • Корпорации Майкрософт известно, что некоторые клиенты Windows 10 получают несколько предложений KB3119142 через Центр обновления Майкрософт, даже если обновление помечается как успешно установленный. Корпорация Майкрософт помогает решить эту проблему. Тем временем мы рекомендуем, что пользователи получают несколько предложений KB3119142 попробуйте следующие способы решения этой проблемы.

    • Способ 1

      1. На панели управления щелкните Удаление программы в группе программ .
      2. В списке программ найдите Microsoft Visual C++ 2012 распространяемого (X64)-11.0.61030 или Microsoft Visual C++ 2012 распространяемого (X86)-11.0.61030, в зависимости от архитектуры системы.
      3. Щелкните правой кнопкой мыши имя входа и нажмите кнопку Изменить.
      4. В диалоговом окне Изменить параметры нажмите кнопку " восстановить".
      5. Восстановление после завершения процесса, перезагрузите компьютер, если будет предложено сделать это.
    • Способ 2

      1. Выполните функции восстановления Изменить установки для Microsoft Visual C++ 2012 распространяемого пакета, запустив программу установки из следующий веб-узел центра загрузки корпорации Майкрософт:

        https://www.microsoft.com/en-us/download/confirmation.aspx?id=30679
      2. В диалоговом окне Изменить параметры нажмите кнопку " восстановить".
      3. Восстановление после завершения процесса, перезагрузите компьютер, если будет предложено сделать это.