Microsoft Visual Studio C++2022 Windows 11 SDK环境

2023-05-16

Microsoft Visual Studio C++2022 Windows 11 SDK环境

  • 1.安装
  • 2.环境变量
  • 本文为作者(难拳)原创,转载请注明出处。

1.安装

Visual Studio 2022适用于Windows上.NET和C++开发人员的最佳综合IDE。完整打包了一系列丰富的工具和功能,可提升和增强软件开发的每个阶段。
发行说明:Visual Studio 2022 Release Notes | Microsoft Learn
下载地址:Visual Studio Tools - 免费安装 Windows、Mac、Linux (microsoft.com)


双击安装包,安装社区版Community 2022。
在这里插入图片描述
选择工作负荷:使用C++的桌面开发。
在这里插入图片描述
单个组件添加Windows 11 SDK(10.0.22621.0),如果不添加SDK执行C语言#include <xxx.h>时会报错:No such files or directory。
在这里插入图片描述
语言包默认选择中文(简体)。
在这里插入图片描述
选择安装路径:
在这里插入图片描述
等待下载完成:
在这里插入图片描述
安装完成。
在这里插入图片描述
Visual Studio 2022默认在安装根目录下载Windows Kits文件夹下与Visual Studio 2022安装目录平级,这要逼死强迫症,如果不在意那就不用管它了。
如果实在看着难受,有两种方式可以修改Windows Kits文件夹里面安装的Windows 11 SDK:

  • 方式一修改注册列表,不过这种方式有一定的隐患,要慎重考虑,如果不想重装可以使用这种方式。
    将Windows Kits文件夹整个剪切到Visual Studio文件夹D:\Microsoft Visual Studio下面(读者根据自己的安装路径去做剪切)。
    在这里插入图片描述
    修改注册列表,指向新的Windows Kits文件夹地址
    地址一:\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Kits\Installed Roots
    在这里插入图片描述
    地址二:\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Microsoft SDKs\Windows\v10.0
    在这里插入图片描述
    地址三:\HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windows Kits\Installed Roots
    在这里插入图片描述
  • 方式二:先单独下载安装Windows 11 SDK:https://developer.microsoft.com/zh-cn/windows/downloads/windows-sdk/选择安装路径。
    具体安装方式见:Microsoft Visual Studio C++2017+Windows 11 SDK环境一文中Windows 11 SDK安装方式。
    缺点:要先安装Windows 11 SDK 然后再安装Visual Studio 2022,有一点繁琐。

补充点共享组件、工具和SDK的默认路径在第一次安装的时候可以手动选择路径,后续重新安装的时候默认选择了第一次选择的路径,后续修改这个路径只能从注册列表中修改:\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\Setup
在这里插入图片描述
修改后再次安装就是修改后的路径。

在这里插入图片描述
至此Visual Studio安装完毕。

2.环境变量

需要配置三个环境变量IDE_BIN、IDE_INCLUDE和IDE_LIB,变量名称读者可以根据喜好自己取名字

  1. bin变量:IDE_BIN,在cmd中执行cl命令的环境变量。
    路径:D:\Microsoft Visual Studio\Community\VC\Tools\MSVC\14.34.31933\bin\Hostx64\x64
  2. include变量:IDE_INCLUDE
    路径:D:\Microsoft Visual Studio\Community\VC\Tools\MSVC\14.34.31933\include
  • Windows kits(Windows 11 SDK)下include:
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Include\10.0.22621.0\cppwinrt
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Include\10.0.22621.0\shared
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Include\10.0.22621.0\ucrt
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Include\10.0.22621.0\um
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Include\10.0.22621.0\winrt
  • 一共6条环境变量值
  1. lib变量:IDE_LIB
    路径:D:\Microsoft Visual Studio\Community\VC\Tools\MSVC\14.34.31933\lib\x64
  • Windows kits(Windows 11 SDK)下lib:
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Lib\10.0.22621.0\ucrt\x64
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Lib\10.0.22621.0\ucrt_enclave\x64
    路径:D:\Microsoft Visual Studio\Windows Kits\10\Lib\10.0.22621.0\um\x64
  • 一共4条环境变量值
  1. 校验->配置到path中:
    打开cmd输入cl验证环境变量配置。
    在这里插入图片描述

  2. 测试->在桌面创建一个hello.c文件,写入测试代码。

	#include <stdio.h>
	
	int main()
	{
		printf("Hello word!");
		return 0;
	}
  • 在cmd中输入cd desktop跳转到桌面,输入命令cl /EHsc hello.c。
    在这里插入图片描述

  • 在桌面生成二进制文件hello.obj与可执行文件hello.exe,测试完毕。

    补充:如果执行过程中报错fatal error C1034: stdio.h: no include path set
    解决方法是再配置一个vcvars64.bat的环境变量初始化一下环境。

  • 执行命令cl /EHsc hello.c之前先执行vcvars64.bat初始化一下环境,然后再执行cl命令。

本文为作者(难拳)原创,转载请注明出处。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Microsoft Visual Studio C++2022 Windows 11 SDK环境 的相关文章

  • 抱歉,未实现:64 位模式未编译

    这就是我想要做的 在 Windows 7 64 位上 g m64 o main main cpp 我得到的错误是 Sorry unimplemented 64 bit mode not compiled in 我从这里安装了 mingw 6
  • 如何确定我的应用程序是在 x86 还是 x64 Windows 上运行?

    我想知道 在运行时 我是在 32 位还是 64 位 Windows 上运行 OSVERSIONINFOEX 结构告诉我主要版本和次要版本 但我猜我需要内部版本号 有人知道它们是什么吗 如果您的应用程序是针对 64 位编译的 那么答案很简单
  • 从MAC地址获取IP。 arp -a 不显示设备

    我正在尝试编写一个批处理文件 该文件应该在连接到网络 腾达 WiFi 路由器 时找到我的 Android 手机的动态分配的 IP 所以我正在尝试arp a并搜索我手机的 MAC 地址 以便我可以从表中获取其 IP C Users Leero
  • 在 Windows 上使用 OpenBLAS 安装 numpy 的教程

    拜托 我这里确实需要一盏灯 我想使用良好的 BLAS LAPACK 库安装 numpy在 Windows 上 但绝对没有页面足够好地解释该过程 看来 OpenBLAS 是一个又好又快的选择 目标是将 theano 与 keras 一起使用
  • 如何使用Delphi在Win7防火墙中打开端口

    我想在 Windows 7 防火墙中打开一个端口 以便通过 Delphi 进行端口转发 但正如其他线程中所说 Windows 7 在防火墙中有多个配置文件 公共 私有 下一个代码仅向其中之一添加例外 Code procedure addPo
  • ERRORLEVEL 与 %ERRORLEVEL% 与感叹号 ERRORLEVEL 感叹号

    我想我对 ERRORLEVEL 与 ERRORLEVEL 有基本的了解 但是 ERRORLEVEL 让我困惑 我正在制作一个调用可执行文件的脚本 然后使用任务列表来查看它是否正在运行 然后使用taskkill来杀死它 如果是 然后尝试输出错
  • 在 Windows 上通过 pip 使用 fastmath(gmp 或 mpir)构建 PyCrypto

    我通过 pip 在 Windows 上安装了 PyCrypto 但无法构建 Crypto PublicKey fastmath 因为找不到 GMP 我知道有一个二进制版本虚空 http www voidspace org uk python
  • cygwin + Windows套接字编程

    我正在尝试学习 Windows 中的 Socket 编程 并使用 cygwin 来实现同样的目的 我发现所需的文件位于 usr include w32api 我从网上获取了一个示例程序并尝试编译但无法这样做 相同的代码是 include
  • 在 DLL 中,函数表的结构如何?

    我一直在研究不明确支持我的操作系统的设备库的实现 特别是 我有一个反汇编的 DLL 以及大量的支持源代码 现在 功能表 导出表是如何构造的 我的理解是 第一个结构 data部分是 RVA 表 接下来是通过索引链接到第一个地址表的字符串表 这
  • 如何解决 docker 中的 python 应用程序中的 pywin32 依赖项?

    我有一个 python 3 6 应用程序 必须构建和导入 c 库 并通过 Windows 服务部署多个 celery 工作人员 该应用程序部署在 Windows 虚拟机上的 azure 上 但我必须弄清楚如何创建一个独立于平台的 docke
  • ReadFile() 可能有超时吗?

    while GetExitCodeProcess processInfo hProcess exitCode exitCode STILL ACTIVE ReadFile defaultSTDIN chBuf 1 dwRead 0 Writ
  • 适用于 Windows 的二进制 python 包(模块)的无人值守安装

    是否没有合理的方法来执行 Windows 二进制 python 包的脚本安装 不幸的是 似乎几个基本的 Windows python 软件包 如 pywin32 和 py2exe 只能以 EXE 形式提供 而不是以 MSI 形式提供 据我所
  • 批处理文件随机删除文本文件的一半行?

    我需要一种方法来使用批处理来查看文本文件的每一行 并删除该文本文件中的一半行 随机选择要删除的行 这是为了模拟 D D 游戏中的锦标赛 我所需要的只是一种方法来淘汰每轮比赛的获胜者 我可以轻松地制作一个批处理文件 复制文本文件并为每一轮重命
  • 在虚拟机共享目录上运行“grunt”

    将 Vagrant 与 Windows 主机和 Linux 客户机一起使用 grunt尝试运行作业时返回以下错误 据我了解 在主机 来宾共享目录中 此文件路径超出了 Windows 的 255 个字符限制 npm ERR Error EPE
  • IOCP AcceptEx 在连接时未创建完成

    我目前正在尝试一些用于套接字编程的新库 IOCP 我偶然发现了AcceptEx http msdn microsoft com en us library windows desktop ms737524 28v vs 85 29 aspx
  • 从命令行安装 Oracle 客户端,无需用户交互

    我正在寻找一种在 Windows 上安装 Oracle 客户端但从命令行运行的方法 为了自动运行它应有没有用户交互 对于 Oracle Universal Installer 的命令行选项 Oracle 文档非常稀疏 即使运行设置为setu
  • Visual Studio Code 安装位置

    我几天前安装了 Visual Studio Code 但现在在我的计算机上找不到可执行文件 它在哪里 我已经检查了程序和功能 我还检查了我的路径 由于某种原因 它也不在其中 更新 10 11 2018 如果您进行完全重新安装 包括卸载计算机
  • C# Winforms 不规则的 Windows [重复]

    这个问题在这里已经有答案了 如何使用 WinForms 和 C 创建不规则形状的窗口 有几种不同的方法可以实现这一目标 一是用用TransparencyKey 正如尼夫勒在帖子中指出的那样 另一种是分配一个Region http msdn
  • 如何用Java实现Kerberos协议转换? (S4U2自我)

    Edit 现在我知道我需要什么了 我需要在Java中实现Kerberos协议转换 S4U2Self Net 中有示例 但没有 Java 的示例 有这个第三方库Java 版 Quest 单点登录 http www quest com sing
  • Node npm windows 文件路径太长,无法安装包

    情况 我想在Windows托管的开发环境中使用gulp和相关的前端工具链 我在尝试使用 Browser Sync 之类的 gulp 插件时遇到了困难 因为 node modules 文件夹图呈扇形分布 使得 Windows 文件路径太长而无

随机推荐

  • 树莓派控制无人机实现定点降落(概述目录)

    最近在做一个无人机与车协同的项目 xff0c 无人机需要比较准确地落到车的平台上 xff0c 而且因为经费较少只能用树莓派 xff0c 我的思路以及在调试过程中遇到的问题 xff0c 将公布在我接下来的博文里 这里列个目录 xff1a 树莓
  • C语言字符串常用函数总结(持续更新)

    最近在重温C语言的一些基础知识 xff0c 感觉C语言字符串操作还是比较难的 xff0c 在学习的过程中总结了一些常用的字符串相关函数 xff0c 包括C语言字符串输入 字符串输入 计算字符串长度 字符串赋值 字符串分割 字符串拼接 字符串
  • git tag和branch的关系

    tag类似于从commit发展出来的一个可写的玩具分支 它和branch很像 xff0c 但是可以快速取消所有修改 更多是用于快照查看的 如果它基于的commit被ammend变化了 xff0c 他俩的commit id 就会不一样了 xf
  • git命令之分支管理和Tag标签

    x1f4dd 个人简介 个人主页 xff1a 我是段段 x1f64b x1f34a 博客领域 xff1a 编程基础 前端 x1f4bb x1f345 写作风格 xff1a 干货 xff01 干货 xff01 都是干货 xff01 x1f35
  • 4个方面轻松搞定进度条

    不管是在APP还是PC xff0c 不管是Loading页 xff0c 还是在音乐播放器中 xff0c 进度条的运用都非常广泛 xff0c 形式也多种多样 xff0c 让人眼花缭乱 做为一个交互设计新手 xff0c 项目中也经常碰到进度条设
  • Ubuntu18.04安装ROS初始化rosdep阶段报错的解决方案

    在运行rosdep update时出现 reading in sources list data from etc ros rosdep sources list d ERROR unable to process source https
  • 菜鸡的ROS学习笔记(image_transport)

    菜鸡的ROS学习笔记 xff08 image transport xff09 image transport 这一部分是搬运的ROS wiki中的介绍 xff0c 主要是image transport这个包的用法 xff0c 之后我会把它尽
  • MS5611气压计数据采集(模拟IIC)/温度采集/相对高度求解

    MS5611气压计数据采集 模拟IIC 温度采集 相对高度求解 1 MS5611气压计属性 1 1 基础属性 MS5611使用24位ADC 可以采集温度和气压 xff0c 并且温度可以用来补偿气压 xff0c MS5611在出厂时进行了校准
  • 嵌入式物联网【数据处理篇】C 语言char类型与int类型的转化

    char和int的转换有两种方式 这两种方式适合于在输出时使用 最简单的方法就是利用ASSCII码的差值 直接用char的值减去 0 就行了 eg char nbsp a nbsp 9 int nbsp a a 0 另一个就是要利用c语言的
  • QT数据库:在QT中多线程访问mysql数据库的问题(已解决)

    一 可以便捷的使用多线程并发类QtConcurrent解决 关于类的使用请参考博客 便捷的使用多线程并发类QtConcurrent解决Qt在槽函数中执行耗时操作导致界面卡住的问题 吻等离子的博客 CSDN博客 二 出现问题 QT使用全局db
  • RS485、RS232、TTL的电平以及数据的收发

    目录 一 RS232 1 RS232标准接口定义 2 RS232串口线颜色定义 3 RS232串口接线方法 4 RS232的电平 二 RS485 xff08 基于MAX85的收发介绍 xff09 1 RS485标准接口定义 2 RS485串
  • 软件使用:如何彻底把VMware卸载干净

    1 禁用VM虚拟机服务 首先 xff0c 需要停止虚拟机VMware相关服务 按下快捷键WIN 43 R xff0c 打开windows运行对话框 xff0c 输入services msc 点击确定 在服务管理中 xff0c 找到VM开头的
  • Qt编译器MinGW和MSVC的区别

    一 两者的区别 1 MSVC 即Microsoft Visual C Compiler 即微软自己的编译器 我们下载Windows下的OpenCV时 解压后里面有两个文件夹 一个是build 一个是source build这个文件夹实际上是
  • Visual Studio快捷键(超全)

    目录 常用 xff1a 一 文件相关 二 编辑搜索相关 三 导航视图相关 四 项目相关 五 生成相关 六 调试相关 七 调试相关 八 分析相关 九 工具相关 十 扩展相关 十一 窗口相关 十二 帮助相关 常用 xff1a ctrl 43 x
  • 【软件使用】MarkText下载安装与汉化设置 (markdown快捷键收藏)

    一 安装与汉化 对版本没要求的可以直接选择 3 免安装的汉化包 1 下载安装MarkText MaxText win64 https github com marktext marktext releases download v0 17
  • 嵌入式【协议篇】CAN协议原理

    nbsp 一 CAN协议介绍 1 简介 CAN是控制器局域网络 Controller Area Network CAN 的简称 是一种能够实现分布式实时控制的串行通信网络 其实可以简单把CAN通信理解成开一场电话会议 当一个人讲话时其他人就
  • 曲阜师范大学831学姐高分背诵笔记(完整版)

    导论部分 1 微格教学 18 名词解释 答 微格教学称为 微型教学 xff0c 也称为 小型教学 所谓 微格教学 xff0c 就是将复杂的教学过程分解成许多容易掌握的具体的单一的技能 xff0c 如 导读技能 34 讲授技能 提问技能 等
  • STM32 【FreeRTOS HAL库】创建任务

    任务也不是很复杂的东西 简单得说 创建一个任务 你得提供它的执行函数 你得提供它的栈的大小 函数的执行空间 函数的优先级等重要的条件 因为任务在运行中 任务函数有调用关系 有局部变量 这些都保存在任务的栈里面 任务有可能被切换 有可能被暂停
  • 函数实现是否应该放在头文件

  • Microsoft Visual Studio C++2022 Windows 11 SDK环境

    Microsoft Visual Studio C 43 43 2022 Windows 11 SDK环境 1 安装2 环境变量本文为作者 难拳 原创 xff0c 转载请注明出处 1 安装 Visual Studio 2022适用于Wind