2013-05-12 211 views
2

我有一個相當大的項目,我正在C++/Win32中工作,現在我即將完成,我想開始在其他機器上測試它。我的項目在Visual Studio中運行良好 - 無論是在調試模式還是發佈模式下。但是,如果我嘗試從其構建目錄(所有支持文件就位)運行任一可執行文件,它們就會崩潰。我嘗試使用visual studio提供的調試功能,並打開malloc.c,說堆已損壞。如果我有內存泄漏或某處存在什麼地方,爲什麼我從Visual Studio運行項目時不會收到此錯誤?我可以使用一些關於如何調試問題的指針。爲什麼我的C++/Win32項目不能在Visual Studio之外工作?

+0

你在鏈接到外部庫嗎? – 2013-05-12 06:13:24

+0

如何?我的項目中包含3個庫文件,但我認爲它們會自動生成可執行文件 – 2013-05-12 06:36:01

+0

這些庫是什麼? – 2013-05-12 07:35:40

回答

2

我不認爲這是由於內存泄漏。當我試圖複製只編譯的可執行文件時,它也發生在我身上,但不依賴庫而不是。因此,只需檢查是否所有依賴庫都可用於其他系統。

+0

事情是我什至沒有把它複製到任何地方 - 我只是通過雙擊可執行文件而不是從視覺工作室來運行它。我有3個庫文件鏈接到我的項目。有什麼方法可以將它們鏈接到可執行文件? – 2013-05-12 06:37:42

+0

有很多方法可以鏈接lib。 1)把所有的lib放在同一個目錄下。 2)把它放在system32文件夾中。 3)將庫路徑添加到環境PATH變量。 4)註冊命令註冊您的* .dll庫文件 – Sanoob 2013-05-12 07:08:02

+0

事實上,事實證明,我的項目只有一個庫依賴項。我把它放在System32中,沒有任何改變。 – 2013-05-12 07:19:28

相關問題