Visual Studio 2012不会生成可执行文件

时间:2014-09-18 17:07:34

标签: c++

我最近从DreamSpark上重新下载了Visual Studio 2012 Pro,它只是在我使用C ++时拒绝生成.exe文件。我去调试,我得到一个窗口,阅读以下内容:

无法启动程序' C:\ [文件路径] \ debug \ Project3.exe'

系统无法找到指定的文件。

果然,我查看了我的文件夹,实际上Debug文件夹中没有Project3.exe;事实上,Project3的整个目录中没有名为Project3.exe的文件。我能想到的唯一合乎逻辑的解释是,由于某种原因,它根本就不会生成Project3.exe。

我尝试了几种提议的解决方案(至少是我能理解的解决方案)并没有任何帮助。我试过在文件夹周围移动.cpp文件和.h文件(因为它们也神秘地缺席)但没有任何效果。关于问题可能是什么的任何想法?它刚刚安装完毕,完全符合标准偏好;我没有改变任何事情。

1 个答案:

答案 0 :(得分:0)

试试这个:

右键单击解决方案文件,选择菜单选项'Configuration Manager ...' 在列表中找到您的项目,确保选中“Build”复选框。

如果是,我还建议在文本编辑器中打开项目文件。确认存在以下部分:

编辑这是来自c#项目文件的示例,但前提仍然适用,您应该拥有一个属性组,其配置和平台与您构建的内容相匹配。有关c ++项目的具体示例,请参阅下面的代码部分。

  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
    <DebugSymbols>true</DebugSymbols>
    <DebugType>full</DebugType>
    <Optimize>false</Optimize>
    <OutputPath>bin\Debug\</OutputPath>
    <DefineConstants>DEBUG;TRACE</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
    <Prefer32Bit>false</Prefer32Bit>
    <PlatformTarget>AnyCPU</PlatformTarget>
  </PropertyGroup>

重要的是你有一个配置平台部分,它与你正在构建的配置和平台相匹配,并且outputpath是你期​​望它所在的文件夹。这通常是一个简单的例子。例如调试这样的例子,但是如果乱七八糟地添加或更改配置,这可能会变得很糟糕。

编辑:在确认下面的编辑之前,您应该尝试在发布配置中构建项目,并确认它在那里正确构建,因为它确实显示(根据您的评论)设置发布配置。如果这不起作用,那么您的问题可能不仅仅是缺少配置,这对于Debug配置来说已经是一个奇怪的问题。

编辑:如果您根本没有用于调试的propertyGroup,那么它不应该在调试中正确构建。在你的情况下,我会尝试添加这样的东西(我创建了一个新的c ++项目并将其复制出来。我之前的例子来自ac #project,所以属性不同,但想法是一样的。)我建议在手动更改项目文件之前备份项目。创建一个全新的c ++项目并将其.csproj文件与您的文件进行比较可能会有所帮助。除了我在下面列出的内容之外,还有几个部分适用于c ++项目中的每个配置。

  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
    <ConfigurationType>Application</ConfigurationType>
    <UseDebugLibraries>true</UseDebugLibraries>
    <PlatformToolset>v110</PlatformToolset>
    <CharacterSet>MultiByte</CharacterSet>
  </PropertyGroup>