2012-08-08 221 views
1

我用qmake编译了项目(qmake -project; qmake; nmake)。 当我打开的文件的.pro,重新加载项目,我得到了以下错误:当我打开解决方案无法打开编译的项目

The item "debug\moc_Rls.cpp" already exists under the filter "Generated Files"

项目,是soultion的一部分,现在是unavailiable。

该提出的问题:该怎么办?

+0

切割和移动moc_Rls.cpp看是否错误依然存在;) – perilbrain 2012-08-08 10:41:19

+0

我删除moc_Rls.cpp,错误仍然 – 2012-08-08 10:47:29

+0

,看看哪一个是配置文件,大概的.pro。看来这样的文件已经两岁以下定义过滤器,将其从其中一个中删除。 – perilbrain 2012-08-08 10:50:23

回答

3

噢对不起,我的错误,我以为你在Linux上。

遵循以下步骤: -

打开[PROJECT_NAME] .vcxproj.filters项目目录下的文件。

请参阅以下行(我贴我的)

<ItemGroup> 
    <ClCompile Include="Main.c"> 
     <Filter>Source Files</Filter> 
    </ClCompile> 
    <ClCompile Include="FunctBank.c"> 
     <Filter>Source Files</Filter> 
    </ClCompile> 
    </ItemGroup> 
    <ItemGroup> 
    <ClInclude Include="funcDef.h"> 
     <Filter>Header Files</Filter> 
    </ClInclude> 
    </ItemGroup> 

在这里你会看到debug\moc_Rls.cpp下两个过滤器定义了两次。

其中一人我能猜到是

<ClInclude Include="debug\moc_Rls.cpp"> 
    <Filter>Generated Files</Filter> 
</ClInclude> 

和你有另外一个检测自己。 找到删除该过滤器后,您的项目将顺利运行。

+0

谢谢你的信息。我已经完成了你的建议,但项目不能继续打开。我使用git,所以对于我来说,回滚要比将这个问题排序出来容易得多。在这里,我发布了这个问题,因为这种类型的错误“不能打开项目”出现在第二次。 – 2012-08-08 12:02:17

+0

是这个项目从互联网下载????如果是的话,也许我可以帮助 – perilbrain 2012-08-08 12:05:12

+0

现在,这是我自己的项目,我从头开始写 – 2012-08-08 13:06:47

1

这是一个老问题,但我刚刚遇到这个问题,所以我分享了解决方案。 我曾使用QTCreator在另一个子文件夹中创建表单类。 为此,“重复”文件已添加到qrc文件中,QTCreator出于某种原因将其视为项目文件。从qrc中删除条目修复了它。