2011-04-30 29 views
1

我正在使用2D引擎,它使用C++編寫,我在Windows 7 64位上使用Microsoft Visual Studio 2010。未連接調試器時程序中斷

我使用OpenGL進行硬件加速,現在正在試驗使用紋理作爲畫布的幀緩衝區。 (類的東西,允許用戶在屏幕上繪製)

現在這個幀緩衝區,只要我開始附帶的調試器(F5)

的程序。如果我從外面啓動該程序工作正常,IDE,或者在沒有調試器(CTRL + F5)的情況下啓動它,我無法繪製紋理,但每幀都會閃爍並出現OpenGL堆棧下溢錯誤。

  • 我真的不知道從哪裏開始尋找問題,你能幫我嗎?
+1

你的程序是否多線程? – 2011-04-30 20:24:30

+0

首先檢查是否所有.dll與.exe文件位於同一文件夾中。如果是,請嘗試更改項目屬性(alt + F7)配置屬性 - > c/C++ - >代碼生成,並在右側菜單中將運行時庫更改爲/ MTd – Raven 2011-04-30 20:26:03

回答

1

我不能肯定,但它可能是幾件事情之一:

  • 未初始化的變量,一個調試器(有時)初始化爲0
  • 競爭條件,因爲不顯示時間現在全部不同
+1

對於未初始化的變量,特別是對於堆分配的變量。從調試器開始時,您會看到Windows調試堆,它會以特定模式預先填充堆分配的內存,而在「正常」啓動時,您將獲得包含任何內容的頁面(程序啓動時通常爲零)。看到發生了什麼的一個可行的技巧是在程序啓動後附加調試器。 – 2011-04-30 21:19:32

相關問題