시스템 중 하나에서 런타임 오류가 발생합니다. 나는 수백 가지의 머신에서 내 애플리케이션을 테스트했지만 어떤 종류의 에러도 내지 못했다. 오류 창은 아래와 같습니다.C++의 힙 손상 오류
응용 프로그램 오류 창을 보여줍니다 충돌,
을하고 난 clickhere 링크를 클릭하면이 이미지 아래에 표시됩니다.
코드를 디버그하면 아래 이미지가 표시됩니다.
내 코드에 문제가 있거나 OS 설치에 문제가 있는지 잘 모릅니다. 왜냐하면 내 응용 프로그램이 모든 곳에서 실행되고 모든 OS에서 실행되지만 컴퓨터 중 하나에서만 오류가 발생하기 때문입니다.
rem->m_operationInProgress = false;
delete rem; // from where error occur.
printf("after deleted.."); //this is not execute.
을 소멸자는 :
코드는 아래 주어진 후 분쇄 f를
test::~test()
{
printf("\n Enter in destructor.. ");
//
// m_isRunning = false;
// Sleep(1000);
// //-------------------------------------------- 1_4_2012
// printf("\nCalling m_dataCollection->shutDown()");
//// printf("\n****calling m_connect.shutDown();****");
// printf("\nRPA :: 11....");
// m_connect.shutDown();
// printf("\nRPA :: 12....");
// //printf("\n****after m_connect.shutDown();****");
// printf("\nRPA :: 13....");
// if(m_device != NULL)
// {
// //printf("\n****before delete m_device;****");
// printf("\nRPA :: 14....");
// delete m_device;
// printf("\nRPA :: 15....");
// //printf("\n****after delete m_device;****");
// }
printf("\n Exited from destructor.. "); // this is also print on console.
}
는 성공적, 인쇄를 실행한다.
디버거에서 프로그램을 실행 해 보셨습니까? –
코드가 많아 이미지가 적습니다. – KillianDS
이미 "백개의 기계"에서 코드를 테스트 했으므로 동일한 오류가 발생하지 않았으므로 분명히이 특정 기계에 문제가 있습니다. 시스템 파일이나 버전이 일치하지 않는 것 같습니다. – Aziz