1·MFC調試時出錯:
CAC_PRINTER_TEST.exe 中的 0x00000000 處未處理的異常: 0xC0000005: Access violation
解決:
檢查是否在加載動態庫後忘記對需要的函數加聲明:
如調用動態庫PR2裏的CAC_PR_LineSpace函數:
//定義:
typedef BOOL (WINAPI *LINESPACEPROC)(double lpi);
LINESPACEPROC LineS;
//調用動態庫
hinst=LoadLibrary(_T("PR.dll"));
//對調用函數聲明
LineS=(LINESPACEPROC)GetProcAddress(hinst,"CAC_PR_LineSpace");
編譯通過,正常運行
2·崩潰的時候在彈出的對話框,“調試”->“窗口”->“局部變量”和“調用堆棧”,查看裏面從上到下列出的對應從裏層到外層的函數調用歷史。雙擊某一行可將光標定位到此次調用的源代碼或彙編指令處,尋找問題點。
3.檢查調用的指針是否爲空指針,或“值太小或過大”,
造成訪問了“不可訪問內存區”造成的異常。