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



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

#include <stdio.h>
#include <iostream>
int main(int argc, char argv[]) {
  cout << "hi" << endl;
}

当我第一次在调试模式下编译时,Visual Studio抱怨"无法启动program. 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 "Debugprint_digits.unsuccessfulbuild" because "AlwaysCreate" was specified.
1>FinalizeBuildStatus:
1>  Deleting file "Debugprint_digits.unsuccessfulbuild".
1>  Touching "Debugprint_digits.lastbuildstate".
1>
1>Build succeeded.
1>
1>Time Elapsed 00:00:00.08

显示构建成功,但由于某些原因没有构建可执行文件

这里有几个问题:

1)这个错误是关于试图运行程序,而不是编译它:

"无法启动程序…Debugmyprogram.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;",你应该能够修复这些特定的错误。

得到一个干净的编译,你应该能够运行调试器:)

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

需要在include后写入

using namespace std; 

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

当我没有在"properties"中正确声明我正在使用的库时,我得到了类似的错误。

我想我要做的是写。lib文件的名称在属性/链接器/输入/额外的依赖,并设置路径在"vc++目录"。但如果只使用stdio和iostream,就不会出现这个问题。

同样的问题也面临过,经过一些研究,我终于找到了解决方案。解决方案-进入项目属性->安全选项卡->取消选中"启用一次点击安全设置"

最新更新