Visual Studio 抱怨编译调试时找不到 .exe

问题描述 投票:0回答:7

我有一个非常简单的 C++ 应用程序。

#include <stdio.h>
#include <iostream>

int main(int argc, char argv[]) {
  cout << "hi" << endl;
}

当我在调试模式下第一次编译时,Visual Studio 抱怨“无法启动程序..\Debug\myprogram.exe。系统找不到指定的文件。”

但是,我认为这是显而易见的,因为我是第一次编译,对吗?这个可执行文件应该还不存在,那么为什么 Visual Studio 拒绝编译呢?

感谢您的帮助。

另外,当我构建时,会出现以下日志:

当我构建(构建->构建解决方案。)时,会出现此日志:

1>------ Build started: Project: print_digits, Configuration: Debug Win32 ------
1>Build started 12/23/2011 4:32:17 PM.
1>InitializeBuildStatus:
1>  Creating "Debug\print_digits.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>FinalizeBuildStatus:
1>  Deleting file "Debug\print_digits.unsuccessfulbuild".
1>  Touching "Debug\print_digits.lastbuildstate".
1>
1>Build succeeded.
1>
1>Time Elapsed 00:00:00.08

它说构建成功,但由于某种原因没有构建可执行文件。

c++ visual-studio-2010
7个回答
4
投票

这里有几个问题:

1)此错误是关于尝试运行程序,而不是编译它:

“无法启动程序..\Debug\myprogram.exe。系统无法 找到指定的文件。”

2)可能找不到程序的原因是编译失败。

以下是我从您的来源得到的错误:

tmp.cpp(5) : error C2065: 'cout' : undeclared identifier
tmp.cpp(5) : error C2297: '<<' : illegal, right operand has type 'char [3]'
tmp.cpp(5) : error C2065: 'endl' : undeclared identifier
tmp.cpp(6) : warning C4508: 'main' : function should return a value; 'void' return type assumed

如果添加“using namespace std;”,您应该能够修复这些特定错误

获得干净的编译,您应该能够运行调试器:)


2
投票

我也有同样的问题。问题是我的防病毒软件(在我的例子中是 Avast)在创建文件时自动删除该文件。而且因为我将 Avast 置于静默模式,所以它没有注意到我的删除操作。因此,禁用防病毒软件或设置排除规则对我的情况有所帮助。


1
投票

需要写在include之后

using namespace std; 

1
投票

我在 Visual Studio 2015 中也遇到同样的问题。 如果我有一个包含 2 个项目的解决方案,并将 Linker->General 中的输出文件设置为 $(IntDir)$(TargetName)$(TargetExt) 那么它会构建一个 .exe 文件(我已验证它存在),但我无法运行通过 Visual Studio。 除了恢复到 $(OutDir) 之外,我目前没有解决此问题的方法。 当前的问题是两个项目都在 $(IntDir) 中生成目标文件,但我在同一文件夹中得到两个不同的 .exe 文件。 一旦我尝试更改输出位置,我就无法让调试器通过 Visual Studio 执行 .exe 文件,因此我怀疑我需要编辑 .sln 或 .vcxproj 文件来解决问题。 不幸的是,Visual Studio 存在缺陷,如果您遇到这些问题,在这些情况下可能需要直接编辑 xml 文件。


0
投票

当我没有在“属性”中声明正确使用的库时,我遇到了类似的错误。

我认为我要做的就是在属性/链接器/输入/附加依赖项中写入.lib文件的名称,并在“VC++目录”中设置路径。但仅使用 stdio 和 iostream 不应该遇到这个问题。


0
投票

同样的问题也遇到过,经过一番RND终于找到了解决方案。 解决方案-转到项目属性->安全选项卡->取消选中“启用 ClickOnce 安全设置”。


0
投票

我收到此错误是因为我的 .cpp 文件未包含在项目中。我左键单击并将其添加到项目中,我的问题得到了解决。

© www.soinside.com 2019 - 2024. All rights reserved.