2012-07-13 14 views
3

我測試不具備開發IDE安裝在Windows 8系統上我的C++應用程序崩潰,我能夠得到Windows事件日誌中的以下(Visual Studio的C++。):如何在沒有開發IDE的系統上處理我的C++程序崩潰?

Fault bucket , type 0 
Event Name: APPCRASH 
Response: Not available 
Cab Id: 0 

Problem signature: 
P1: my_app_name.exe 
P2: 1.0.2.0 
P3: 4fffd4db 
P4: my_app_name.exe 
P5: 3.0.2.0 
P6: 4fffd4db 
P7: c0000005 
P8: 00074eb0 
P9: 
P10: 

Attached files: 
C:\Windows\Temp\WER4AEB.tmp.appcompat.txt 
C:\Windows\Temp\WER4B0B.tmp.WERInternalMetadata.xml 
C:\Windows\Temp\WER4B0C.tmp.hdmp 
C:\Windows\Temp\WER4CD2.tmp.dmp 

These files may be available here: 
C:\ProgramData\Microsoft\Windows\WER\ReportQueue\AppCrash_my_app_name.exe_8ea1c961fdc39248f2954cb7413ed349afffc9_cab_0d004d0d 

Analysis symbol: 
Rechecking for solution: 0 
Report Id: 4c93c3b5-ccc2-11e1-9b6e-000c297b96e1 
Report Status: 4 
Hashed bucket: 

我試着轉到提供的.hdmp和.dmp文件提供的路徑,但沒有任何地方指向該報告。

任何想法如何處理這種情況?

+0

使用日誌記錄來跟蹤應用程序的行爲 – SingerOfTheFall 2012-07-13 09:21:07

+0

您還不能安裝windbg嗎? – Naveen 2012-07-13 09:21:44

+0

這是一個崩潰的服務。另外系統不是我的電腦,我不覺得安裝它太多了...只有當我可以得到這些dmp文件,我會在我的IDE上調試它。我只是不知道墜機事件發生在哪裏? – ahmd0 2012-07-13 09:24:30

回答

3

我覺得你的服務崩潰轉儲也許寫到這裏:

根據
%WINDIR%\System32\Config\SystemProfile 

this不知道這仍然是爲Win 8相同的路徑

您可以使用AdPlusProcDump或編程使用MiniDumpWriteMiniDump將內存轉儲寫入您選擇的位置,也可以使用ETW進行事件跟蹤。

轉儲文件可以在Visual Studio或WinDbg中打開,然後您可以查看應用程序狀態。

WinDbg裏:

!analyze -v 

將試圖找到失事你的事業,希望這有助於。

+0

Windows錯誤報告(AKA WER)可以配置爲將崩潰轉儲保存在指定的位置。我不記得細節,但我在Windows 7上做過一次。 – 2012-07-13 09:57:17

+0

@AlexeyFrunze有更多的鏈接:http://msdn.microsoft.com/en-us/library/windows/hardware/ gg487440。aspx,但是OP詢問默認位置在哪裏,這聽起來像Win8已經生成了某個地方的轉儲 – EdChum 2012-07-13 09:59:40

+0

AFAIR,Windows將在某個文件夾中保存崩潰轉儲(如果生成),然後可以刪除它們(也許,在它們被髮送微軟?)。我記得在正確配置WER之前看到幻像轉儲(=正如我想的那樣)。 – 2012-07-13 10:02:26

1

您可以使用visual studio遠程調試工具(google it)讓您通過Visual Studio連接到正在運行的過程。當然,機器必須在同一個網絡上。

  1. 轉到「調試 - >附加到進程」。
  2. 更改運輸「遙控」
  3. 在「預選賽」
  4. 輸入目標設備的IP選擇過程附加到。
  5. 調試!

此外,如果有崩潰轉儲(.hdmp,名.dmp ......可在C:\ProgramData\Microsoft\Windows\WER\ReportQueue\),您可以通過WinDBG中,運行它們哪個(如果您有符號和源代碼路徑設置)將指向你的代碼在您運行!analyze -v命令後執行。您不需要在目標機器上安裝WinDBG。

+0

感謝您的信息。雖然我無法在C:\ ProgramData \ Microsoft \ Windows \ WER \ ReportQueue \文件夾中找到任何內容。 – ahmd0 2012-07-13 20:03:51

相關問題