0

我有我的小客戶端應用程序 - 啓動時 - 通過「新」unhandlex異常2010

pHistory = new CHistory; 

這是在堆上創建一些用戶定義的對象不問題,一切都很順利,直到昨天。

我想部署我的應用程序,也決定使用「安裝項目」從Visual Studio 2010 http://msdn.microsoft.com/en-us/library/dd293568.aspx

但幾分鐘前,當我試圖運行程序(我沒有做任何修改部署昨天)之後,它拋出一個未處理的異常

未處理的異常在0x55b259da (msvcr100d.dll)在CLient.exe: 0000005:訪問衝突讀取 位置0xccccccc0。

我無法想象,爲什麼......我已經刪除了該解決方案的安裝項目,但這並沒有改變什麼...... 如果有一些變化在項目設置,通過設置功能進行項目,我不知道在哪裏和什麼...

是否有人熟悉這個或可能有所幫助?

謝謝。

編輯:這發生在我調試通過視覺工作室的應用程序...不在另一臺計算機上,我部署它!

+0

請擴展您的示例代碼 - pHistory的定義是什麼? – 2010-08-27 17:37:35

回答

0

我的新手修復這個問題是創建一個新的解決方案,並從舊的每個文件插入到這個新的。

它工作正常,現在...

但我現在還不能確定是什麼原因導致這個問題......我還是在事業上認爲,由於安裝項目......但對方應答者告訴我它不是原因:/ ...

0

看起來像未初始化的內存。 當您開始準備分發時,您是否從調試更改爲發佈版本?

+0

我做了兩個...我做了調試版本構建和發佈版本構建:D ... – Incubbus 2010-08-27 17:05:36

2

閱讀位置0xccccccc0

的調試版本總是初始化與價值0xcccccccc,旨在讓你的程序崩潰時,它試圖使用未初始化的變量局部變量。這很好,對於你的代碼中的一個錯誤診斷很好,這會導致發貨產品出現隨機故障。

這當然與您的安裝項目無關。使用調試器找出錯誤所在的位置。調用堆棧應該是什麼指針無效的主要提示。

+0

當調試指標達到上面的代碼時發生錯誤:「phistory = new CHistory」;或者如果我對此發表評論,只要它達到「新」指令 – Incubbus 2010-08-27 17:07:02

+0

聽起來就像堆被摧毀。從來沒有好玩的調試,利用crtdbg.h。祝你好運。 – 2010-08-27 17:12:02

+0

但爲什麼沒有發生任何變化? – Incubbus 2010-08-27 17:17:48