Практическое руководство. Использование Windows SDK в классическом приложении Windows

При создании классического проекта Windows в Visual Studio он предназначен для последней версии пакета SDK для Windows, установленного Visual Studio по умолчанию. Visual Studio устанавливает версию пакета SDK при установке рабочей нагрузки C++ Desktop. Пакет SDK для Windows поддерживает написание кода для Windows 7 с пакетом обновления 1 (SP1) и более поздних версий. Дополнительные сведения о целевых версиях Windows см. в разделе "Использование заголовков Windows" и "Обновление WINVER" и _WIN32_WINNT.

При обновлении существующего проекта вы можете использовать целевой пакет SDK для Windows, указанный в проекте. Вы также можете перенацелить проект, чтобы использовать последний пакет SDK для Windows. Благодаря последнему пакету SDK для Windows вы получите преимущества поддержки последних операционных систем и языковых стандартов.

Использование подходящего пакета SDK для Windows для проекта

Начиная с Visual Studio 2015 библиотека среды выполнения C (CRT) разделена на две части: одна часть, ucrtbase, содержит стандартные функции C и CRT, которые можно использовать в универсальных приложениях Windows. Эта библиотека теперь называется универсальной библиотекой CRT или UCRT и перемещена в пакет SDK для Windows. UCRT содержит множество новых функций, таких как функции C99, необходимые для поддержки последних стандартов языка C++. Другая часть исходной CRT — vcruntime. Он содержит код поддержки среды выполнения C, запуска и завершения, а также все остальное, что не входит в UCRT. Библиотека vcruntime устанавливается вместе с компилятором И набором инструментов C++ в Visual Studio. Дополнительные сведения см. в разделе о функциях библиотеки CRT.

Теперь UCRT — это системный компонент, установленный в каждой версии Windows 10 и более поздних версий. Он также доступен в качестве устанавливаемого компонента для всех предыдущих поддерживаемых версий Windows. Пакет SDK для Windows можно использовать для целей всех поддерживаемых версий Windows. Полный список поддерживаемых операционных систем см. в пакете SDK для Windows.

Чтобы перенацелить проекты на использование последнего пакета SDK для Windows при обновлении с версии проекта до Visual Studio 2015, выполните следующие действия:

Назначение последней версии пакета SDK для Windows

  1. Убедитесь, что установлен последний пакет SDK для Windows. Пакет SDK для Windows устанавливается в рамках разработки классических приложений с помощью рабочей нагрузки C++ в Установщике Visual Studio. Автономная версия доступна в пакете SDK для Windows.

  2. Откройте контекстное меню узла проекта и выберите проект Retarget. (В более ранних версиях Visual Studio выберите Версия пакета SDK для retarget.) Откроется диалоговое окно " Действия решения проверки".

    Review Solution Actions.

  3. В раскрывающемся списке версий целевой платформы выберите версию пакета SDK для Windows, которую вы хотите использовать. Как правило, рекомендуется выбрать последнюю установленную версию. Нажмите кнопку "ОК", чтобы применить изменение.

    8.1 в этом контексте относится к пакету SDK для Windows 8.1.

    Если этот шаг выполнен успешно, в окне вывода появится следующее сообщение.

    Retargeting End: 1 completed, 0 failed, 0 skipped

  4. Откройте диалоговое окно свойств проекта. В разделе "Общие свойства> конфигурации" обратите внимание на значения версии целевой платформы Windows. Изменение значения на данном этапе действует аналогично данной процедуре. Дополнительные сведения см. в разделе Страница свойств "Общие" (проект).

    Target Platform property in the Property Pages dialog.

    Это действие приводит к изменению значений макросов проекта, содержащих пути к файлам заголовка и файлам библиотеки. Чтобы узнать, что изменилось, откройте раздел каталогов Visual C++ диалогового окна "Свойства проекта". Выберите одно из свойств, например "Включить каталоги". Затем откройте раскрывающийся список значения свойства и нажмите кнопку <"Изменить>". Откроется диалоговое окно Каталоги включения .

    Include Directories dialog box.

    Нажмите кнопку "Макросы" и прокрутите список макросов >> до макросов Windows SDK, чтобы просмотреть все новые значения.

    List of Windows SDK Macros.

  5. Повторите процедуру перенацеления для других проектов решения, по мере необходимости и перестройте решение.

Изменение целевой платформы для пакета SDK для Windows 8.1

  1. Откройте контекстное меню узла проекта в Обозреватель решений и выберите проект Retarget. (В более ранних версиях Visual Studio выберите Версия пакета SDK для retarget.)

  2. В раскрывающемся списке версий целевой платформы выберите 8.1.

См. также

Пошаговое руководство. Создание традиционного классического приложения Windows (C++)