<file>的所需名称无效 - visual studio 2015

时间:2015-11-25 16:51:02

标签: c++ visual-studio visual-studio-2015

这非常疯狂,我只是将现有的.h文件添加到VS2015 C ++项目中,但它会抱怨:

  

c:\ code \ usbview \ USBdevices.h的所需名称无效

当它有自己的.sln文件时,我能够将此文件添加到项目中。但是,我创建了一个新的空.sln文件,并希望添加此项目和其他项目以及这个问题是如何启动的。它不会将此项目添加到新解决方案中,从而产生类似于文件的奇怪错误我补充道。

然后我将基础项目添加到该解决方案文件并尝试在那里添加.h和.cpp文件,但它添加了.cpp但是为.h文件提供了此错误。

这很奇怪,我更改了文件名但出现了同样的错误。

6 个答案:

答案 0 :(得分:2)

BlackDwarf评论部分中的link修复了问题,即使这是针对C#但适用。

我没有USERPROFILE环境变量,所以我创建了它并将其设置为c:\ Users \ my.name,现在我可以添加文件

答案 1 :(得分:2)

我遇到了同样的问题,原因是文件ProjectName.vcxproj.filters中的合并错误。

答案 2 :(得分:0)

如果环境变量路由不适合您,请检查项目文件的完整性。

我在2017年遇到了这个问题,这是由于手动编辑错误导致vcxproj中的双重输入。我们的vcxproj文件中包含以下内容:

<ClInclude Include="XXXX.h" /> <ClCompile Include="XXXX.h" />

2017年,我们确实得到了您在尝试添加现有文件时所描述的错误,在添加新文件时略有不同,在其他地方添加了奇怪的崩溃。在2015年打开解决方案记录了确切的问题,但未能加载项目。我们删除了双重录入,所有神秘的问题都消失了。

答案 3 :(得分:0)

这里的答案让我在遇到OP问题时检查了我的vcxproj。 事实证明我在Project.vcxproj.filters中有两个具有相同名称的过滤器,类似于

<Project>
  <Common>
  ...
  ...
  <Stuff>
     <Common>

我正在尝试将文件添加到第二个Common。

为了解决这个问题,我不得不......

  • 在{favored text editor}中手动编辑vcxproj并删除我添加的第二个过滤器,其中包含重复的名称。
  • 从VS(2017)中的解决方案卸载/重新加载项目,并添加具有唯一名称的过滤器。一切都很好 - 我可以将文件添加到我的新过滤器中。

答案 4 :(得分:0)

我使用VS 2013 Express并出现相同的错误。

解决了通过删除VCTargetsPath环境变量,我在前一段时间添加了它,不记得为什么了的原因:)

答案 5 :(得分:0)

我遇到了同样的问题,但是该解决方案对我来说与“环境变量”无关。我做了什么:关闭Visual Studio2017。重新打开我的项目。突然,我有两个“ Helper.cpp”和“ Helper.h”的副本,我试图将它们添加为解决方案文件的一部分。单击每个文件,我看到其中一个文件无效,可能是因为我已在该文件位置删除了该版本的文件。我删除了无效的文件,检查以确保文件中包含我想要的正确代码,并构建了解决方案,并且一切正常。

不确定为什么关闭并重新打开VS可以解决此问题,但很高兴做到了。