내 Win32 콘솔 applicaton은 타사 라이브러리를 사용합니다. WinMain 전역 개체를 종료 한 후 파괴가 시작되고 AV가 어딘가 깊은 곳에서 발생합니다. 나는 정말로 쓰기 만하고 싶어한다.TerminateProcess를 사용할 때의 위험은 무엇입니까?
TerminateProcess(GetCurrentProcess(), 0);
어딘가에 WinMain이있다. 이 작업을 수행하면 신청서가 정상적으로 종료됩니다.
MSDN says 이렇게하면 은 동적 연결 라이브러리 (DLL)에 의해 유지 관리되는 전역 데이터의 상태가 손상 될 수 있습니다. 나는 전역 객체를 가지고 있다면 그것의 소멸자가 실행되지 않고 데이터베이스 연결이나 비슷한 것을 완료하지 못할 수도 있음을 이해한다. 내 프로그램에는 그런 것이 없다.
TerminateProcess를 사용할 때의 위험은 무엇입니까? 내 목적을 위해 사용할 수 있는지 어떻게 결정합니까?
"AV"란 무엇입니까? –
AV = 액세스 위반, 잘못된 메모리 액세스로 인한 충돌 – Michael
해당 타사 라이브러리의 특성은 어느 것입니까? –