DWORD dwErr = GetLastError();
TCHAR szMsg[ 1024 ] = {0,};
FormatMessage( FORMAT_MESSAGE_FROM_SYSTEM, NULL, dwErr, 0, szMsg, 1024, NULL );
AfxMessageBox( szMsg, MB_OK );
만약 FormatMessage 옵션에 FORMAT_MESSAGE_ALLOCATE_BUFFER 추가하면 다음과 같이 해야한다.
DWORD dwErr = GetLastError();
TCHAR* s = 0;
FormatMessage( FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_ALLOCATE_BUFFER, NULL, dwErr, 0, s, 0, NULL );
AfxMessageBox( szMsg, MB_OK );
LocalFree( s );
메모리를 알아서 할당해주는 방식이므로, 동적할당 받았으니 따로 해제를 해주어야 한다.
댓글 없음:
댓글 쓰기