VC獲取並修改計算機屏幕分辨率(MFC)


    //檢測當前分辨率  
    int Width = GetSystemMetrics(SM_CXSCREEN);  
       int Height = GetSystemMetrics(SM_CYSCREEN);  
    DEVMODE lpDevMode0;  
    lpDevMode0.dmBitsPerPel=32;  
    lpDevMode0.dmPelsWidth=Width;  
    lpDevMode0.dmPelsHeight=Height;  
    lpDevMode0.dmSize=sizeof(lpDevMode0);  
    lpDevMode0.dmFields =DM_PELSWIDTH|DM_PELSHEIGHT|DM_BITSPERPEL;  
    //修改  
    DEVMODE lpDevMode;  
    lpDevMode.dmBitsPerPel=32;  
    lpDevMode.dmPelsWidth=1024;  
    lpDevMode.dmPelsHeight=768;  
    lpDevMode.dmSize=sizeof(lpDevMode);  
    lpDevMode.dmFields =DM_PELSWIDTH|DM_PELSHEIGHT|DM_BITSPERPEL;  
    LONG result;  
    result=ChangeDisplaySettings(&lpDevMode,0);  
    if (result==DISP_CHANGE_SUCCESSFUL)  
    {  
        //MessageBox("修改成功!");  
        ChangeDisplaySettings(&lpDevMode,CDS_UPDATEREGISTRY);  
        //            //使用CDS_UPDATEREGISTRY表示次修改是持久的,  
        //            //並在注冊表中寫入了相關的數據  
        MessageBox("修改成功!還原");  
        if(IDOK)  
        {  
            ChangeDisplaySettings(&lpDevMode0,CDS_UPDATEREGISTRY);  
        }  
    }  
    else  
    {  
        //MessageBox("修改失敗,恢復原有設置!");  
        ChangeDisplaySettings(NULL,0);  
    }  

出處:http://blog.csdn.net/nat_myron/article/details/8502009


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM