无法打开已编译的项目

时间:2012-08-08 10:30:33

标签: c++ visual-studio-2010 qt qmake nmake

我用qmake编译了项目(qmake -project; qmake; nmake)。 当我打开文件.pro时,为了重新加载项目,我收到了以下错误:

  

过滤器下已存在“debug \ moc_Rls.cpp”项   “生成的文件”

当我打开解决方案时,作为灵魂的一部分的项目现在是不可取的。

明显的问题:该怎么做?

3 个答案:

答案 0 :(得分:5)

哦,抱歉,我认为你在Linux上是我的错误。

请按照以下步骤操作:

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

2.参见以下几行(我正在粘贴我的)

  <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>

3.在这两个过滤器下,您将看到debug\moc_Rls.cpp定义两次。

4.我猜其中的一个是

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

另一个你必须自己发现。

找到删除该过滤器后,您的项目将顺利运行。

答案 1 :(得分:1)

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

答案 2 :(得分:0)

我最近遇到了这个问题。即使使用VS19。从过滤器中删除重复项无法解决我的问题。因此,要解决该问题,您还需要从.vcxproj文件中删除该

摘要:

  • -从Yourfancyproject.vcxproj中删除重复项。
  • -从Yourfancyproject.vcxproj.filters中删除重复项

然后应该解决的问题。