C runtime (crt) and c++ standard library (stl) .lib files
Содержание:
- С чего начать установку Visual C++?
- Причины обновления кода C++
- Установка распространяемых пакетов
- Пакеты SDK, библиотеки и файлы заголовков
- Терминология
- Связанные статьи
- Распространяемые файлы и лицензирование
- Мост для классических приложений
- Повторно распространяемые пакеты Visual C++
- Visual Studio 2015, 2017, 2019, and 2022
- Microsoft Visual C++ Runtime Library Runtime Error — как исправить
- Как установить пакет Microsoft Visual ++
- Ошибки, вызванные изменениями в стандарте C++
- COM-компоненты
- Установка Visual Studio и обновление с более ранних версий
- Microsoft решила исправить неразбериху вокруг Visual C++ Redistributable
- Visual Studio
- Ошибки, связанные с функциями CRT
С чего начать установку Visual C++?
Скачать Visual C++ все версии одним файлом
Также можно скачать все версии одним файлом, что позволит быстро установить Visual C++ запустив на установку один файл, который установит все версии Microsoft Visual C++.
При установке данного пакета, все имеющиеся версии будут переустановлены, а не имеющиеся доустановлены. Что позволит не устанавливать каждый пакет по отдельности, а также избежать разных ошибок при установке по отдельности.
Microsoft Visual С 2005
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 10; Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003 Service Pack 2; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP Service Pack 3
Microsoft Visual С 2008
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 10; Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003 Service Pack 2; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP Service Pack 3
Microsoft Visual С 2010
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 7; Windows Server 2003 R2 (32-Bit x86); Windows Server 2003 Service Pack 2; Windows Server 2008 R2; Windows Server 2008 Service Pack 2; Windows Vista Service Pack 2; Windows XP Service Pack 3
Microsoft Visual С 2012
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP
Microsoft Visual С 2013
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP
Microsoft Visual С 2015
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 10; Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003 Service Pack 2; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP Service Pack 3
Microsoft Visual С 2017
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 10; Windows 7 Service Pack 1; Windows 8; Windows 8.1; Windows Server 2003 Service Pack 2; Windows Server 2008 R2 SP1; Windows Server 2008 Service Pack 2; Windows Server 2012; Windows Vista Service Pack 2; Windows XP Service Pack 3
Microsoft Visual С 2019
Пакет Microsoft Visual C ++ 2019 включает в себя пакеты 2015, 2017, 2019. При установке данного пакета, установленные пакеты 2015 или 2017 будут заменены.
Поддерживаемая операционная система
- 32-разрядная (x86)
- 64-разрядная (x64, WOW)
- ARM
Windows 10; Windows 7 Service Pack 1; Windows 8; Windows 8.1
Причины обновления кода C++
Если устаревшее приложение работает удовлетворительно, в безопасной среде и не находится под активной разработкой, может быть не слишком много стимула к обновлению. Однако рассмотрим обновление в таких случаях: приложение требует постоянного обслуживания. Или вы выполняете новую разработку функций или вносите улучшения производительности или безопасности. Обновление предоставляет следующие преимущества.
-
Тот же код может работать быстрее, так как мы улучшили оптимизацию компилятора.
-
Современные функции C++ и методики программирования исключают множество распространенных причин ошибок и создают код, который гораздо проще поддерживать, чем старые идиомы в стиле C.
-
Время сборки ускоряется из-за улучшения производительности компилятора и компоновщика.
-
Улучшенное соответствие стандартам. Параметр компилятора /permissive- помогает найти код, который не соответствует текущему стандарту C++. Новый препроцессор поддерживает также соответствие кода.
-
Улучшенная безопасность во время выполнения, включая более безопасные функции библиотеки времени выполнения C . и такие функции компилятора, как проверка защиты и средства очистки адресов (новые Visual Studio 2019 версии 16,4).
Установка распространяемых пакетов
Распространяемые пакеты Visual C++ позволяют устанавливать и регистрировать все библиотеки Visual C++. Если вы используете его, запустите его в качестве необходимого компонента в целевой системе, прежде чем устанавливать приложение. Рекомендуется использовать эти пакеты для развертываний, поскольку они включают функцию автоматического обновления библиотек Visual C++. Пример использования этих пакетов см. в разделе Пошаговое руководство. Развертывание приложения Visual C++ с помощью распространяемого пакета Visual C++.
Каждый распространяемый пакет Visual C++ проверяет наличие более новой версии на компьютере. Если обнаружена более поздняя версия, пакет не будет установлен. Начиная с Visual Studio 2015, в распространяемых пакетах отображается сообщение о сбое установки. Если пакет выполняется с помощью флага, сообщение об ошибке не отображается. В любом случае ошибка записывается установщиком Майкрософт, а результат ошибки возвращается вызывающему объекту. Начиная с пакетов Visual Studio 2015 вы можете избежать этой ошибки, проверив реестр, чтобы узнать, установлена ли более новая версия. Текущий номер установленной версии хранится в ключе. номер версии — 14,0 для Visual Studio 2015, Visual Studio 2017 и Visual Studio 2019, так как последний распространяемый пакет совместим с версией 2015. Ключ — , или, в зависимости от установленных версий Vcredist для платформы. ( Если вы используете Regedit для просмотра версии установленного пакета x86 на платформе x64, необходимо проверить подраздел.) Номер версии хранится в REG_SZ строковом значении , а также в наборе значений, , и . Чтобы избежать ошибки во время установки, нужно пропустить установку распространяемого пакета, если только что установленная версия является более новой.
Пакеты SDK, библиотеки и файлы заголовков
Visual Studio включает библиотеку времени выполнения C (CRT), стандартную библиотеку C++ и другие библиотеки, относящиеся к Microsoft. большинство папок включения, содержащих файлы заголовков для этих библиотек, находятся в каталоге установки Visual Studio в папке \вк. файлы заголовков Windows и CRT находятся в папке установки Windows SDK.
диспетчер пакетов vcpkg позволяет легко устанавливать сотни сторонних библиотек с открытым исходным кодом для Windows. Дополнительные сведения см. на странице о vcpkg.
К библиотекам Майкрософт относятся:
-
Microsoft Foundation Classes (MFC): объектно-ориентированная платформа для создания традиционных программ Windows (в частности, корпоративных приложений), со сложным пользовательским интерфейсом, включающим кнопки, поля списков, древовидные структуры и другие элементы управления. Дополнительные сведения см. в разделе MFC Desktop Applications.
-
Active Template Library (ATL): многофункциональная вспомогательная библиотека для создания компонентов COM. Для получения дополнительной информации см. ATL COM Desktop Components.
-
C++ AMP (C++ Accelerated Massive Parallelism): библиотека, предоставляющая возможность выполнять высокопроизводительные вычислительные задачи общего характера в графическом процессоре. Для получения дополнительной информации см. C++ AMP (C++ Accelerated Massive Parallelism).
-
Среда выполнения с параллелизмом: библиотека, упрощающая параллельное и асинхронное программирование для мультиядерных и многоядерных устройств. Для получения дополнительной информации см. Concurrency Runtime.
Для многих сценариев программирования Windows также требуется пакет Windows SDK, в который входят файлы заголовков, обеспечивающие доступ к компонентам операционной системы Windows. по умолчанию Visual Studio устанавливает Windows SDK как компонент рабочей нагрузки C++ для настольных систем, что позволяет разрабатывать универсальные приложения Windows. для разработки приложений UWP требуется Windows 10ная версия Windows SDK. дополнительные сведения см. в разделе Windows 10 SDK. (дополнительные сведения о Windows пакетах sdk для более ранних версий Windows см. в Windows SDK архиве).
Program files (x86) \ Windows kits — это расположение по умолчанию для всех версий Windows SDK, которые вы установили.
Другие платформы, например Xbox и Azure, обладают собственными пакетами SDK, которые вам, возможно, потребуется установить. Дополнительные сведения см. в Центре разработчика DirectX и в Центре разработчика Azure.
Терминология
-
приложение Win32 — это Windows классическое приложение на языке C++, которое может использовать Windows собственные api -интерфейсы C и (или ) api COM и api библиотеки стандартных библиотек, а также сторонние библиотеки. приложение Win32, выполняемое в окне, требует, чтобы разработчик работал явно с Windows сообщениями внутри функции Windows процедуры. Несмотря на имя, приложение Win32 можно скомпилировать 32 как 64-разрядный (x86) или 64-разрядный (x64) двоичный файл. в Visual Studio IDE термины x86 и Win32 являются синонимами.
-
Модель COM — это спецификация, которая позволяет программам, написанным на разных языках, взаимодействовать друг с другом. многие компоненты Windows реализуются как com-объекты и следуют стандартным правилам COM для создания объектов, обнаружения интерфейсов и уничтожения объектов. Использование объектов COM из классических приложений C++ относительно просто, но написание собственного COM-объекта является более сложным. Библиотека активных шаблонов (ATL) предоставляет макросы и вспомогательные функции, УПРОЩАЮЩИЕ разработку com.
-
приложение MFC — это Windows классическое приложение, которое использует Microsoft Foundation Classes для создания пользовательского интерфейса. Приложение MFC также может использовать компоненты COM, а также API CRT и библиотеки стандартных библиотек. MFC предоставляет объектно-ориентированную оболочку с тонким C++ для циклов оконных сообщений и Windows api. MFC является выбором по умолчанию для приложений (особенно приложений корпоративного типа), которые имеют множество элементов управления пользовательского интерфейса или пользовательских элементов управления. MFC предоставляет удобные вспомогательные классы для управления окнами, сериализации, обработки текста, печати и современных элементов пользовательского интерфейса, таких как лента. Для эффективной работы с MFC вы должны быть знакомы с Win32.
-
Приложение или компонент C++/CLI использует расширения для синтаксиса C++ (как это разрешено стандартом C++), чтобы обеспечить взаимодействие между .NET и машинным кодом C + +. приложение C++/cli может содержать части, работающие в собственном коде, и части, которые выполняются в платформа .NET Framework с доступом к библиотеке базовых классов .net. C++/CLI является предпочтительным вариантом при наличии машинного кода C++, который должен работать с кодом, написанным на C# или Visual Basic. Он предназначен для использования в библиотеках DLL .NET, а не в коде пользовательского интерфейса. Дополнительные сведения см. в статье Программирование .NET с использованием C++/CLI (Visual C++).
любое классическое приложение в C++ может использовать среду выполнения C (CRT), классы и функции стандартной библиотеки, COM-объекты и открытые функции Windows, которые вместе называются Windows API. общие сведения о Windows классических приложениях на c++ см. в разделе Начало работы с Win32 и C++.
Связанные статьи
Заголовок | Описание: |
---|---|
Разработка для Windows | Содержит сведения об API Windows и COM. (Некоторые API-интерфейсы Windows и сторонние библиотеки DLL реализованы в виде объектов COM). |
Hilo: разработка приложений C++ для Windows 7 | Описание способов создания классического приложения Windows, использующего анимацию Windows и Direct2D для создания интерфейса пользователя по принципу карусели. этот учебник не был обновлен с момента Windows 7, но он по-прежнему предоставляет исчерпывающие сведения о программировании Win32. |
общие сведения о программировании Windows в C++ | описание основных возможностей программирования Windows настольных систем на C++. |
Распространяемые файлы и лицензирование
При развертывании приложения необходимо также развернуть файлы, поддерживающие это приложение. Если какие – либо из этих файлов предоставляются корпорацией Майкрософт, проверьте, разрешено ли их распространение. ссылка на условия лицензии Visual Studio в интегрированной среде разработки. используйте ссылку условия лицензии в диалоговом окне о Microsoft Visual Studio. также загрузите соответствующие лицензионные соглашения и лицензии из каталога Visual Studio License.
чтобы просмотреть список файлов redist, на который ссылается раздел «распространяемый код» в разделе Visual Studio 2019 с условиями лицензионного соглашения на использование программного обеспечения майкрософт, см. .
чтобы просмотреть список redist, на который имеется ссылка в разделе «распространяемый код» условия лицензионного соглашения на использование программного обеспечения майкрософт Visual Studio 2017, ознакомьтесь с разделом .
чтобы просмотреть список redist, на который имеется ссылка в разделе «распространяемый код» условия лицензионного соглашения на использование программного обеспечения майкрософт Visual Studio 2015, ознакомьтесь с разделом .
Дополнительные сведения о распространяемых файлах см. в разделе Определение библиотек DLL для повторного распространения и примеров развертывания.
Мост для классических приложений
в Windows 10 можно упаковать существующее классическое приложение или COM-объект в качестве приложения uwp и добавить функции UWP, такие как touch, или вызвать api из современного набора api Windows. можно также добавить приложение UWP в решение для настольных систем в Visual Studio и упаковать их вместе в одном пакете и использовать интерфейсы Windows api для взаимодействия между ними.
в Visual Studio 2017 версии 15,4 и более поздних версиях можно создать Windows пакет приложения Project, чтобы значительно упростить работу по упаковке существующего настольного приложения. В отношении того, какие вызовы реестра или API-интерфейсы используются настольным приложением, применяются некоторые ограничения, но во многих случаях можно создать альтернативные пути кода для обеспечения аналогичной функциональности при работе в пакете приложения. Дополнительные сведения см. в статье Мост для классических приложений.
Повторно распространяемые пакеты Visual C++
Распространяемые пакеты Visual C++ устанавливают компоненты среды выполнения для библиотек Visual C++ на компьютере, где не установлен Visual C++. Эти библиотеки нужны для запуска приложений, разработанных с помощью соответствующей версии Visual C++.
Для Visual Studio 2008
Эти пакеты устанавливают компоненты среды выполнения для библиотек среды выполнения C (CRT), стандартного C++, ATL, MFC, OpenMP и MSDIA. Они устанавливаются в кэш собственной сборки, также называемый папкой WinSxS. Они устанавливаются в версиях операционных систем Windows, поддерживающих параллельные сборки, fили библиотеки, которые поддерживают параллельные модели развертывания (CRT, STL, ATL, MFC, OpenMP).
Обновление безопасности библиотеки Microsoft Foundation Class
Была выявлена проблема с безопасностью. Эта проблема ведет к уязвимости приложения MFC в системе на основе Windows с распространяемым компонентом Visual C++ Redist. Указанные в этой статье пакеты обновлений для системы безопасности MFC содержат наиболее актуальные распространяемые файлы для Visual Studio.
Visual Studio 2015, 2017, 2019, and 2022
This table lists the latest supported English (en-US) Microsoft Visual C++ Redistributable packages for Visual Studio 2015, 2017, 2019, and 2022. The latest supported version has the most recent implemented C++ features, security, reliability, and performance improvements. It also includes the latest C++ standard language and library standards conformance updates. We recommend you install this version for all applications created using Visual Studio 2015, 2017, 2019, or 2022.
Architecture | Link | Notes |
---|---|---|
ARM64 | https://aka.ms/vs/17/release/vc_redist.arm64.exe | Permalink for latest supported ARM64 version |
X86 | https://aka.ms/vs/17/release/vc_redist.x86.exe | Permalink for latest supported x86 version |
X64 | https://aka.ms/vs/17/release/vc_redist.x64.exe | Permalink for latest supported x64 version. The X64 redistributable package contains both ARM64 and X64 binaries. This package makes it easy to install required Visual C++ ARM64 binaries when the X64 redistributable is installed on an ARM64 device. |
Download other languages and versions, including versions for long term servicing release channels (LTSC), from my.visualstudio.com.
Note
Some of the downloads that are mentioned in this article are currently available on my.visualstudio.com. Make sure to log in by using a Visual Studio Subscription account so that you can access the download links. If you’re asked for credentials, use your existing Visual Studio subscription account. Or, create a free account by selecting the link in No account? Create one!.
Notes
-
Visual Studio versions since Visual Studio 2015 share the same redistributable files. For example, any apps built by the Visual Studio 2015, 2017, 2019, or 2022 toolsets can use the latest Microsoft Visual C++ Redistributable. However, the version of the Microsoft Visual C++ redistributable installed on the machine must be the same or higher than the version of the Visual C++ toolset used to create your application. For more information about which version of the Redistributable to install, see Determining which DLLs to redistribute.
-
Windows XP Support: Microsoft ended support for Windows XP on April 8, 2014. Current versions of the Visual C++ Redistributable for Visual Studio 2015-2022 only support Windows Vista, 7, 8.1, 10, and 11. The last version of the Visual C++ Redistributable that works on Windows XP shipped in Visual Studio 2019 version 16.7 (file versions starting with 14.27). The redistributable is available in the my.visualstudio.com Downloads section as Visual C++ Redistributable for Visual Studio 2019 — Version 16.7. Use the Search box to find this version. To download the files, select the platform and language you need, and then choose the Download button.
Microsoft Visual C++ Runtime Library Runtime Error — как исправить
Сегодня мы опишем все варианты действий, которые помогут решить распространенную проблему в Windows (7/8/8.1/10), связанную с ошибкой Microsoft Visual C++.
Microsoft Visual C++ Runtime Library: Runtime Error – ошибка, возникающая по причине сбоев в работе операционной системы. Ее можно увидеть при загрузке новой игры (Skyrim, GTA и др.) или программы.
Точно не известно, почему данный сбой возникает на персональных ПК.
Интегрированная в саму систему Microsoft Visual C++ является очень сложным элементом, поэтому сбои в его работе считаются абсолютно нормальным происшествием.
Появление ошибки, при запуске Казаков в Windows 7
Исправление ошибки Runtime Error
Мы вывели все основные источники проблемы, и постарались дать краткое описание по их решению. Начнем с самого простого.
Проверка соответствий
Microsoft Visual C++ — основная база для написания игр и приложений. Первым действием пользователя может стать лишь проверка и установка обновлений. Официальный пакет можно скачать с сайта компании, он распространяется бесплатно.
Строит непременно обратить внимание на свойства ОС — скачать нужно свою битную версию x86-64.
Мощные ПК могут скачать последние пакеты Studio 2015.
Вирусы
Антивирус не может гарантировать защиту со 100% гарантией. Проверка всех дисков на наличие вирусов не будет лишней. Именно глубокое сканирование следует провести несколькими программами по удалению вредоносного ПО. Вспомогательные онлайн ресурсы тут тоже могут пригодиться, чтобы не производить установку большого количества антивирусов.
Runtime Error фото» title=»Исправление ошибки Runtime Error фото» width=»597″ height=»193″ /> Примените антивирусы с обновленными антивирусными базами
Ошибка во времени
Любая системная программа разрабатывается с расчетом на определенный срок своего действия, после его окончания будет нужна установка обновлений. Отчет времени ведется согласно часам на компьютере. Их сбой может привести к ложному истечению гарантийной работы. Поэтому следует установить правильное местное время.
Устанавливаем автоматическое определение времени и даты
Переустановка софта
Скачивание файлов часто приводит к потере нескольких важных элементов, без которых нормальное функционирование невозможно.
- Переустановите скачанную игру или программу заново.
- Найдите другой источник с похожим файлом и загрузите его оттуда.
- Произведите вручную поиск недостающих элементов.
Конфликты с DirectX
DirectX 10-той версии очень часто становиться причиной возникновения конфликта. Это возникает из-за его нагрузки на ОС. Некоторые Windows XP просто не справляются с полученным объемом информации.
- Решением может стать обновление DirectX . Лучше это сделать произвести с помощью установщика от Microsof.
- Можно самостоятельно найти более легкий аналог нежели DirectX 10, 11 и установить его.
NET Framework и его наличие
NET Framework может быть не установлен на вашем компьютере. Следует скачать актуальную версию под вашу операционную систему. Без данного элемента о работе игр и речи быть не может.
карта
карты и их драйвера всегда становятся проблемами при многих изменениях на ПК. Нужно проверить, нет ли тут конфликтов.
- Посетите сайт разработчика своей видеокарты. Проверьте наличие последних обновлений.
- Перед установкой произведите полное стирание предыдущих драйверов.
- Попробуйте снова включить проблемный софт.
Проверяем драйвера видеокарты
Очистка реестра
Windows реестр очень важен для сохранения многих полезных функций, которые используются пользователей при каждом запуске компьютера. Иногда сохраненных данных становиться слишком много. Они начинают в хаотичном порядке выдавать разные ошибки. Пути, по которым раньше все работало, отныне становятся заблокированными.
- Очистите реестр специальными утилитами.
- Произведите перезагрузку системы в конце оптимизации.
Проверяем реестр на наличие ошибок через CCleaner
А вот видео инструкция по работе со сторонним софтом для исправления данного бага. Судя по отзывам — многим помогает.
Ошибка Microsoft Visual C++ Runtime Library устраняется в 100% случаях. Главное помнить, что испробовать нужно каждый пункт данной статьи в строгом с ним соответствии. Проблема носит исключительно виртуальный характер, искать спаленные элементы на платах не стоит.
- Алексей
- Распечатать
Как установить пакет Microsoft Visual ++
Существует два основных способа загрузки и установки необходимых для запуска приложений компонентов: с официального сайта компании Майкрософт, а также из сторонних, но проверенных источников. Рассмотрим все варианты более подробно.
Предварительные шаги
Для выбора совместимой с системой версии пакета, предварительно проверьте тип системы. Для этого щелкните правой кнопкой мыши по иконке «Этот компьютер» на рабочем столе и перейдите в свойства. В окне справа отобразятся системные характеристики: найдите разрядность.
Посмотрите, какие компоненты Microsoft Visual C++ уже установлены на ПК. Для этого:
1. Через системный поиск найдите Панель управления. Также ее можно открыть с помощью диалогового окна «Выполнить» и команды control.
2. В качестве режима отображения разделов выберите мелкие или крупные значки.
3. Выберите раздел «Программы и компоненты».
4. Откроется список установленного на ПК программного обеспечения.
Рекомендуется загружать все библиотеки Microsoft Visual C++ от 2008 до 2019, поскольку будут скачаны все актуальные файлы DLL и нужные библиотеки. Это позволит запускать без ошибок как старые, так и новые игры или приложения.
Ошибки, вызванные изменениями в стандарте C++
Путь развития самого стандарта C++ не всегда подразумевает обратную совместимость. Введение семантики перемещения C++11, новых ключевых слов и других функций языка и стандартных библиотек потенциально может привести к ошибкам компилятора и даже иному поведению во время выполнения.
Например, старая программа C++ может включать заголовок iostream.h. Этот заголовок C++ был признан нерекомендуемым уже довольно давно и был полностью удален из Visual Studio. В этом случае необходимо будет использовать <iostream> и переписать код. Дополнительные сведения см. в статье .
C4838: предупреждение о сужающих преобразованиях
Теперь стандарт языка C++ указывает, что преобразования целочисленных значений без знака в значения с знаком считаются сужающими преобразованиями. До Visual Studio 2015 компилятор не выдавал подобное предупреждение. Проверьте каждое вхождение, чтобы убедиться, что подобное сужение не влияет на правильность работы кода.
COM-компоненты
Модель COM — это спецификация, которая позволяет программам, написанным на разных языках, взаимодействовать друг с другом. многие компоненты Windows реализуются как com-объекты и следуют стандартным правилам COM для создания объектов, обнаружения интерфейсов и уничтожения объектов. Использование объектов COM из классических приложений C++ относительно просто, но написание собственного COM-объекта является более сложным. Библиотека активных шаблонов (ATL) предоставляет макросы и вспомогательные функции, УПРОЩАЮЩИЕ разработку com. Дополнительные сведения см. в разделе компоненты ATL com Desktop.
Установка Visual Studio и обновление с более ранних версий
Установка поддержки С++ в Visual Studio
Скачайте Visual Studio и установите набор инструментов Microsoft C/C++.
Руководство по переносу и обновлению Microsoft C++
Руководство по переносу кода и обновлению проектов до Visual Studio 2015 или более поздней версии, чтобы воспользоваться преимуществами лучшего соответствия компилятора стандарту C++, а также ускоренной компиляцией и функциями безопасности, например устранение рисков Spectre.
Инструменты и функции C++ в выпусках Visual Studio
Сведения о разных редакциях Visual C++.
Поддерживаемые платформы
Узнайте, какие платформы поддерживаются компилятором Microsoft C/C++.
Microsoft решила исправить неразбериху вокруг Visual C++ Redistributable
Программам, разработанным с помощью Visual Studio, обычно требуется для запуска определенная версия Microsoft Visual C++ Redistributable. Данное условие приводит к установке на ПК Windows 10, Windows 8.1 и Windows 7 большого количеств различных версий распространяемых пакетов Visual C++.
В результате на большинстве устройств Windows можно наблюдать ситуацию, когда в системе развернуты пакеты Microsoft Visual C++ Redistributable, установка которых была инициирована программным обеспечением, обновлениями, например патчами безопасности или вручную системным администратором.
Пакеты Redistributable сохраняются в общедоступных системных директориях, поэтому любая программа может получить к ним доступ при необходимости.
Microsoft приводит следующий пример на странице поддержки «Последние поддерживаемые версии Visual C++ для скачивания»:
Это основное отличие от предыдущих версий Visual C++, поскольку у них есть собственные файлы выполнения, которые не используются совместно с другими версиями.
На странице поддержки Microsoft Docs приводится дополнительная информация:
Ранние версии распространяемых пакетов для Visual Studio по-прежнему нужно будет скачивать и устанавливать отдельно, или они будут развертываться в процессе установки ПО. Сторонний установщик Visual C++ All in One Installer помогает установить все необходимые распространяемые пакеты в системы Windows.
Универсальная CRT – шаг в верном направлении. Хотя она не решает проблему со старыми распространяемыми пакетами C++, она значительно упрощает работу с пакетами Visual C++ 2015 Redistributable и выше.
Сколько распространяемых пакетов Visual C++ установлено в вашей системе?
Visual Studio
Microsoft Visual Studio — набор специализированных утилит и инструментов, предназначенных для разработчиков приложений.
Содержит в себе большинство необходимого инструментария разработчика для выпуска полноценных программ, в том числе и с графическим UI. С помощью Visual Studio можно создавать приложения для всех популярных платформ, как десктопных так и мобильных: iOS, iPadOS, macOS и еще ряда других.
Обзор Microsoft Visual C++
Обязательный комплект библиотек, который должен присутствовать на каждом компьютере. С его помощью можно «обучить» систему распознавать код, написанный в среде разработки Майкрософт Визуал С++. Эта платформа используется в большинстве современных игр, поэтому после инсталляции компонентов вы исключите многие системные ошибки при попытке открыть приложения.
Пакет Визуал С++ является официальным продуктом от Майкрософт, это гарантирует корректную работу со всеми современными версиями операционок.
Отметим, что выпуски библиотек не являются взаимозаменяемыми – самые «свежие» версии по дате не всегда включают все файлы, присутствующие в более ранних релизах. Правильным решением будет установка всех предлагаемых компонентов.
Особенности
Набор необходимых компонентов для корректной работы приложений. Скачать библиотеки Microsoft Visual C++ рекомендуется в случае, если на компьютере не запускаются современные игры и возникают ошибки «Запуск программы невозможен, так как на локальном компьютере отсутствует нужный файл msvcp140.dll» или «Microsoft Visual C++ Runtime Library — Runtime Error!».
Ошибки, связанные с функциями CRT
За прошедшие годы в среду выполнения C было внесено множество изменений. Были добавлены многие безопасные версии функций, а некоторые были удалены. кроме того, как было сказано ранее в этой статье, реализация CRT в корпорации майкрософт была оптимизирована в Visual Studio 2015 в новые двоичные файлы и связанные lib-модули.
Если ошибка связана с функцией CRT, обратитесь к разделу Журнал изменений Visual C++ 2003–2015 или Улучшения соответствия C++ в Visual Studio для поиска дополнительной информации. Если возникла ошибка LNK2019, связанная с неразрешенными внешними элементами, убедитесь, что соответствующая функция не была удалена. Если вы уверены, что функция по-прежнему существует, а вызывающий код является правильным, проверьте, использует ли проект параметр . Если это так, нужно обновить список библиотек, чтобы проект использовал новые универсальные библиотеки (UCRT). Дополнительные сведения см. в разделе о библиотеках и зависимостях выше.
Если ошибка связана с или , убедитесь, что не применяется частное определение любой из этих функций без включения stdio.h. Если оно имеет место, удалите все частные определения или связь с legacy_stdio_definitions.lib. Эту библиотеку можно указать в свойстве Дополнительные зависимости, находящемся в разделе Свойства конфигурации > Компоновщик > Входные данные диалогового окна Страницы свойств. Если вы выполняете компоновку с использованием пакета Windows SDK 8.1 или более ранней версии, добавьте legacy_stdio_definitions.lib.
Если ошибка связана с аргументами строки форматирования, вероятно, это вызвано тем, что компилятор строже соответствует стандарту. Дополнительные сведения см. в журнале изменений
Отнеситесь к указанным здесь ошибкам с особым вниманием, так как они могут представлять угрозу безопасности