2011-12-23 125 views
3

我有一個非常簡單的C++應用程序。Visual Studio抱怨編譯調試時找不到.exe

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

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

當我編譯在調試模式下的第一次,Visual Studio中抱怨「無法啓動程序.. \調試\ 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 

它說構建成功,但沒有可執行由於某種原因正在建造。

+1

你可以發佈完整的構建日誌嗎? – 2011-12-23 21:59:55

+0

當然(我已經發布上​​面的生成日誌)。 – dangerChihuahua007 2011-12-23 22:36:01

+3

您可以檢查您正在嘗試構建的項目是否標記爲:Build - > Configuration Manager? – 2011-12-23 22:38:08

回答

0

這裏有幾個問題:

1)此錯誤是關於嘗試運行的程序,而不是編譯:

「無法啓動程序.. \調試\ 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 

你應該可以,如果你添加到解決這些特定的錯誤「使用命名空間std;」

得到一個乾淨的編譯,你應該能夠運行調試:)

+0

謝謝!我嘗試過Build-> Clean Solution。日誌記錄「構建成功」,但是當我嘗試運行調試器時,出現相同的錯誤。確實,在檢查之後,我的Debug文件夾中不存在可執行文件。 – dangerChihuahua007 2011-12-23 22:31:59

0

我有一個類似的錯誤,當我沒有申報庫後我在「屬性」中正確使用。

我想我所要做的就是在Properties/Linker/Input/Additional Dependencies中編寫.lib文件的名稱,並在「VC++目錄」中設置路徑。但是你不應該只用stdio和iostream來解決這個問題。

0

同樣的問題曾經面臨過一些RND終於找到了解決方案。 解決方案 - 轉至項目屬性 - >安全選項卡 - >取消選中「啓用ClickOnce安全設置」。

1

我有同樣的問題。問題在於我的殺毒軟件(在我的情況下是Avast)在創建時自動刪除文件。而且因爲我在靜音模式下使用了Avast,所以沒有注意到我的刪除。因此,禁用防病毒或設置排除規則對我有幫助。

0

我與Visual Studio 2015有同樣的問題。 如果我有兩個項目的解決方案,並將鏈接器 - >常規中的輸出文件設置爲$(IntDir)$(TargetName)$(TargetExt),那麼它會生成一個.exe文件(我已驗證它存在),但是我不能通過Visual Studio運行它。 我目前沒有這個問題的解決方案,除了恢復到$(OutDir)。 目前的問題是兩個項目都在$(IntDir)中生成目標文件,但我在同一個文件夾中獲得了兩個不同的.exe文件。 一旦我試圖改變輸出位置,我一直無法讓調試器通過Visual Studio執行.exe文件,所以我懷疑我需要編輯.sln或.vcxproj文件來解決問題。 不幸的是,Visual Studio有問題,並且可能需要在這些情況下直接編輯xml文件,如果這些是您遇到的問題。