비주얼스튜디오 최적화와 FreeMind
2005/01/06 20:39
비주얼스튜디오의 최적화의 오류
어디선가 읽은듯한 기억이 있는데 비주얼스튜디어의 최적화 옵션은 너무나 엉망이라 제대로 된 코드조차를 엉망으로 만든단다.
함부러 비주얼스튜디어의 최적화 옵션을 사용하지 않도록 해야한다. 물론 디바이스 관련해서는 별 필요가 없겠지만...
컴파일에 문제라기 보다는 최적화 옵션에 대한 인식부족일듯...
왜 문제 점인가 바로가기
http://madchick.egloos.com/863318
HDC hDC = CreateDC("DISPLAY", NULL, NULL, NULL);
int width = GetDeviceCaps(hDC, HORZRES);
int height = GetDeviceCaps(hDC, VERTRES);
if(width != 1024 || height != 768)
{
AfxMessageBox("모니터의 해상도를 1024X768 로 변경합니다.");
DEVMODE mode ;
mode.dmBitsPerPel = 32; // 32비트 칼라로 변경
mode.dmPelsWidth = 1024;
mode.dmPelsHeight = 768;
mode.dmFields = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT;
int nRet = ChangeDisplaySettings(&mode, CDS_FULLSCREEN);
// char szMessage[1024] ;
// sprintf(szMessage,"%d",nRet) ;
// 릴리즈 모드에서 아래의 코드가 없으면 해상도가 변하지 않는다.
// 이 증상은 2005.01.05일에 발생했다.
// Project -> Setting -> C/C++ 의 Optimzations를 Default로 설정
}
int width = GetDeviceCaps(hDC, HORZRES);
int height = GetDeviceCaps(hDC, VERTRES);
if(width != 1024 || height != 768)
{
AfxMessageBox("모니터의 해상도를 1024X768 로 변경합니다.");
DEVMODE mode ;
mode.dmBitsPerPel = 32; // 32비트 칼라로 변경
mode.dmPelsWidth = 1024;
mode.dmPelsHeight = 768;
mode.dmFields = DM_BITSPERPEL | DM_PELSWIDTH | DM_PELSHEIGHT;
int nRet = ChangeDisplaySettings(&mode, CDS_FULLSCREEN);
// char szMessage[1024] ;
// sprintf(szMessage,"%d",nRet) ;
// 릴리즈 모드에서 아래의 코드가 없으면 해상도가 변하지 않는다.
// 이 증상은 2005.01.05일에 발생했다.
// Project -> Setting -> C/C++ 의 Optimzations를 Default로 설정
}
함부러 비주얼스튜디어의 최적화 옵션을 사용하지 않도록 해야한다. 물론 디바이스 관련해서는 별 필요가 없겠지만...
왜 문제 점인가 바로가기
http://madchick.egloos.com/863318
Trackback Address :: 이 글에는 트랙백을 보낼 수 없습니다
http://www.mindjet.com/us/
MindManager란 프로그램은 상용이고
괜찮습니다.