WindowsSdkDir 从何处来?
緣起
我在《修復被破壞的 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 从何处来?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 程序员是终身学习的职业,应该怎么学习?
- 下一篇: 如何在生产环境下用好EFCore