2010-12-22 143 views
1

我可以在调试时运行,我可以在发布模式下运行,但是我不能在没有调试的情况下运行。我很确定我在某个地方弄错了visual studio的配置,但我不确定。电脑被冻结了,我可能无意间点了点什么。它通常有效。有人有任何想法吗?谢谢!编程: 该程序与F5一起使用。当我将配置放到Release并运行可执行文件时,它也可以工作。但是,Ctrl + F5不起作用,它创建的可执行文件也不起作用。不能在没有调试的情况下运行VC++程序

我刚刚得到一个错误说窗口是寻找一个解决方案,然后这样的: alt text

我甚至试过正从源具有相同的结果安全的整套解决方案...

编辑2: 下面给我下面WinDbg的意见后,我来到了这个错误:

*** ERROR: Symbol file could not be found. Defaulted to export symbols for mfc71d.dll - 
+0

你能更清楚吗?你是否试图说当你使用Ctrl + F5时你的程序工作,并且在F5中不起作用。 – ckv 2010-12-22 04:21:00

+0

当ERR啪啪起来看细节,最常见的原因是FileNotFoundException异常,您的应用需要,可能不会被发现 – 2010-12-22 04:22:33

+0

更新问题 – ntsue 2010-12-22 04:39:24

回答

0

您是否尝试过做一个完全重建?也许手动删除所有中间和输出文件?

2

我的猜测是你的程序中有一些未定义的行为,比如未初始化的变量。在调试模式下,这不会导致崩溃,因为调试版本会为您初始化内存,并且不执行任何优化。

检查野指针错误,并检查未初始化的内存问题。并将C++编译器的警告级别调高到4级(最高实用级别)。这应该会帮助你发现这些错误。

2

看起来程序崩溃了。它看起来像是GUI指向你的崩溃转储。以下是如何检查转储。

从微软下载“Debugging tools for Windows”。安装它。

然后运行,从命令提示符:

> cd \Program Files\Debugging Tools for Windows (x64) [or possibly without (x64)] 
> windbg -z C:\users\ntsoiasue\appdata\local\temp\wer3f91.tmp.mdmp 

当WinDbg的启动时,它会给你一个命令提示符...

键入以下成命令提示符:

> .sympath+ [path to your VS output folder (eg. "Release"). 
      That is, somewhere with a .pdb file for your binary] 
> .reload -f [name of your binary] 
> k 

这会给你一个崩溃的堆栈轨迹。

顺便说一句。 Windbg是一个相当不错的工具,值得了解。

0

它也发生在我身上。我不得不彻底卸载vC++。重新启动您的机器并重新安装。它为我工作。

相关问题