Jul*_*sch 6 c++ intellisense visual-studio visual-c++ visual-studio-2017
我开始在我的大学担任研究员,并被指示使用内部框架为已经存在的用 C++ 编写的应用程序开发一个组件,该框架也是用 C++ 开发的。
目前,我正在努力在 Visual Studio 2017 中正确设置项目。每当我尝试包含框架中的文件时,IntelliSense 都会抱怨无法打开该文件。
然而,以下事情增加了问题的奇怪之处:
解决方案属性设置正确;该项目确实建立起来没有任何抱怨。
编写“#include”指令时,IntelliSense确实会建议头文件的正确相对路径(即#include <framework/class.h>)。
我可以使用“打开文档”class.h”对话框从引用它的源文件中打开头文件。
我已经遇到过这个:
到目前为止,没有什么能解决我的问题。有人遇到过这个问题吗?
TL; 博士
编辑:
我正在使用 MacBook“13 2016;通过 Bootcamp 安装了 Windows 10 Pro 64 位。
出现此问题是因为 Windows 现在可以选择使文件夹区分大小写,并且智能感知习惯于更改它尝试打开的文件的大小写。
Intellisense 尝试使用像 C:\WORKSPACEPATH\PROJECTDIR\MYFILE.cpp 这样的路径(即全部大写),但如果 C:\workspace(或路径中的任何其他目录)设置为区分大小写并且不t 完全匹配,它不会被找到。
就我而言,这是因为我通过 WSL 创建了该文件夹,该文件夹默认情况下在它创建的任何新目录上启用区分大小写(包括通过诸如 之类的东西git clone)。看这里
轻松修复
这可以通过运行以下命令来修复:
fsutil file setCaseSensitiveInfo <directory> disable
Run Code Online (Sandbox Code Playgroud)
更多命令
您可以通过运行来检查文件夹是否启用了区分大小写
fsutil file queryCaseSensitiveInfo <directory>
Run Code Online (Sandbox Code Playgroud)
最后,一个方便的单行代码可以递归地禁用它:
for /r /d %f in (.) do (fsutil file setCaseSensitiveInfo %f disable)
Run Code Online (Sandbox Code Playgroud)
(此信息最初是作为对原始问题的评论发布的,后来发现它实际上是同一个问题。请参阅其他人的评论以获取输入)
| 归档时间: |
|
| 查看次数: |
1433 次 |
| 最近记录: |