2011-12-08 100 views
0

我正在使用ATL dll。 AfxGetApp()指針被破壞

我有一個CWinApp派生的對象。在它的initInstance()中,當我調用AfxGetApp()時,它工作正常,給了我CWinApp的指針。但在一些更多的函數調用後,當我在另一個函數中調用AfxGetApp()/ AfxGetAppName()等時,它返回NULL。

我想CWinApp對象正在被破壞或什麼東西。有了這個想法,我在ExitInstance中放了一個斷點,但是代碼也沒有到達那裏。

任何人都可以幫助我瞭解爲什麼會發生這種情況,以及如何使它返回以前的有效值。

謝謝

+0

任何可能再現問題的最小代碼示例? –

+0

'我正在使用ATL'。改用MFC。 –

回答

0

確保您的DLL/EXE項目鏈接到相同的MFC庫。即多字節/ Unicode字符集...