缘起

我在《修复被破坏的 vs 工程设置》和《修复被破坏的 vs 工程设置(续)》这两篇文章中,分享了调查 VS 包含路径错误的问题,感兴趣的小伙伴儿可以查看。依稀记得在 2013 年的时候调查过类似的问题。前一阵子没翻到,这两天在翻笔记的时候居然意外的找到了。特整理分享给大家。

依稀记得是编译的时候有问题才调查的。

查看 WindowsSdkDir

$(WindowsSdkDir)$ 可通过工程中的宏来查看。先查看宏,

找到 WindowsSdkDir,查看。

小贴士:可以在上方的搜索框输入关键字进行过滤。

WindowsSdkDir 从何处来

从上图,我们可以看到 $(WindowsSdkDir)$ 的值。但是这个值是从哪里来的呢?

可以通过各种文件内容搜索工具来搜索,或者更省事的办法是用 win7 自带的 findstr 命令来搜索。

猜测这个值必然和 vs 有关,所有搜索范围限定为 vs 的安装目录。具体搜索命令如下:

等待搜索结束,就可以到 d:\result.log 里查看搜索结果了。内容如下:

用红框选出来的两个地方比较靠谱,属于 vcvars*.bat,这个应该是设置一些环境变量的。查看对应的 vcvars*.bat,如下:

从上图可知,会先到注册表中查找,如果没有找到再使用预先指定的值。在注册表中查找的时候,会先到 HKLM 下查找,如果没找到,再到 HKCU 下查找。

HKLM 下的值如下图:

HKCU 的值如下图:

使用procmon观察加载过程

话不多说,直接看图:

注意:上图中只保留了结果为 Success 的记录。

总结

  • 这个调查有年头儿了,没想到还能找到当时的笔记。真的是 好记性不如烂笔头!一定要记笔记!

  • 如果没有三方搜索工具(比如,FileLocator),可以试试系统自带的 findstr

感谢你的分享,点赞和在看

WindowsSdkDir 从何处来?相关推荐

  1. MSB8003: 未定义 WindowsSDKDir 属性

    warning MSB8003: 未定义 WindowsSDKDir 属性.可能找不到某些生成工具. 可能找不到某些生成工具.VS三大版本的对比分析 VS运行出错 用Visual Studio Ins ...

  2. warning MSB8003: Could not find WindowsSDKDir variable from the registry

    安装了几天VS都失败了.很郁闷.我安装的是VS2013 Ultimate版本的.当然是盗版的..屌丝有钱可能会去支持下正版.可是现在连买电脑的钱都没得.月月发工资之前都被女朋友告知有各种开销的说.. ...

  3. Build SSCLI20 under VS2008 full Document (完全手册)

    以前build过几次sscli2都成功了,这次换了个新的环境,没想到出了一大堆的问题.折腾了半天,最终搞定,把解决问题的过程和方法都记录下来. 首先说说build的过程中参考过的链接和资源. 首先就是 ...

  4. windows下安装android版reactnative

    为什么80%的码农都做不了架构师?>>>    一.安装JDK 1.在Java官方下载: 2.安装完配置windows环境变量:   添加 JAVA_HOME 内容为 E:\Soft ...

  5. Qt安装—图文并茂搭建VS2008+QT开发环境

    (一)工欲善其事,必先利其器,废话不多讲. 总结起来网上流行的VS2008+QT安装说明有以下几个问题需要解释清楚:      1,首先明确需要下载什么版本的QT.网上流行的安装说明只是针对过去旧版本 ...

  6. 第一次运行OSG入门程序失败记和搞定的情况

    一 OSG简介 OpenSceneGraph(简称OSG)使用OpenGL技术开发,是一套基于C++平台的应用程序接口(API),它让程序员能够更加快速.便捷地创建高性能.跨平台的交互式图形程序.它作 ...

  7. 编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码

    JDK:java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotS ...

  8. VS2013找不到winres.h的解决办法

    好久没有搞C++了,搞C++最烦就各种版本问题的报错.我对C++项目开发不是很熟悉,因为项目需要用VS2013修改一个C++/MFC工程,一编译就报错无法打开包括文件:"winres.h&q ...

  9. Windows 平台编译 WebRTC

    Windows 平台编译 WebRTC 的过程,包括安装依赖的开发工具等,主要要参考 chromium 浏览器的 Windows 平台编译文档,Checking out and Building Ch ...

最新文章

  1. 深度讲解:同步/异步/阻塞/非阻塞/BIO/NIO/apr
  2. mysql xa 和普通事务_一文看懂MySQL中基于XA实现的分布式事务
  3. openmp并行编程_OpenMP实现生产者消费者问题
  4. 图解排序算法(三)之堆排序
  5. xmind怎样画流程图_老师是怎样上网课的?
  6. Linux命令(20)linux服务器之间复制文件和目录
  7. Go语言和其它编程语言的对比
  8. 【高级开发必掌握SQL】SQL优化篇
  9. 下载新版火狐后无法同步书签_Ubuntu解决火狐浏览器无法同步书签的问题【推荐】...
  10. PDF有口令密码怎么移除?
  11. 面试官:内存耗尽后Redis会发生什么 ?
  12. Pigeon服务的注册与发现
  13. 将doc文件转为txt文件
  14. mysql中dml全称是什么_MySQL中的DML、DDL、DCL是什么意思
  15. 【图像处理】初识计算机视觉
  16. pthread_cond_wait pthread_cond_broadcast
  17. web前端-仿优车诚品首页二级分类菜单
  18. 手机网站开发的经验总结
  19. 2的零次方加到2的n次方c语言,计算2的N次方........有什么错吗?
  20. Sweet Butter 香甜的黄油

热门文章

  1. redis下并发问题解决方案
  2. yii2笔记: 单元测试
  3. Oracle免客户端InstantClient安装使用
  4. 【SQL基础】T-SQL函数类型——元数据函数
  5. 如何在PowerPoint演示文稿中使用iTunes音乐
  6. VS2015不能修改安装路径问题
  7. 微信公众号开发之文本消息自动回复,以及系统关注自动回复,php代码
  8. 算法小白——基本排序算法入门
  9. java 生成无重复 随机数
  10. MVC5 - ASP.NET Identity登录原理 - Claims-based认证和OWIN