#include int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int nCmdShow) { DEVMODE dm={{0},0,0,sizeof(DEVMODE),0,DM_DISPLAYQUERYORIENTATION}; int r=ChangeDisplaySettingsEx(NULL,&dm,NULL,CDS_TEST,0); if((r==DISP_CHANGE_SUCCESSFUL) && (dm.dmDisplayOrientation!=DMDO_0)) { DWORD dwSupported = dm.dmDisplayOrientation; dm.dmFields=DM_DISPLAYORIENTATION; r=ChangeDisplaySettingsEx(NULL,&dm,NULL,CDS_TEST,0); if(dm.dmDisplayOrientation==DMDO_0) dm.dmDisplayOrientation=DMDO_90; else { dm.dmDisplayOrientation*=2; } while(dm.dmDisplayOrientation && !(dm.dmDisplayOrientation & dwSupported)) { dm.dmDisplayOrientation*=2; dm.dmDisplayOrientation%=8; } r=ChangeDisplaySettingsEx(NULL,&dm,NULL,CDS_RESET,0); } else MessageBox(NULL,L"Screen Rotation is not supported.",NULL,0); return 0; }