none
调试WDK mirror driver的app代码,CreateDC失败 RRS feed

  • 问题

  • 我使用的是WDK版本是GRMWDK_EN_7600_1.ISO,在XP上用VS2010上调试mirror driver中的app代码(我已经将mirror.sys添加到系统中,即在设备管理器中能看到mirror driver),用断点调试时发现在以下这部分代码中CreateDC失败。hdc的值始终为0。

                       
                HDC hdc = CreateDC("DISPLAY",
                                   deviceName,
                                   NULL,
                                   NULL);
    			
    
                // we should be hooked as layered at this point
                HDC hdc1 = CreateCompatibleDC(hdc);
                HBITMAP hbm1 = CreateCompatibleBitmap(hdc, 1600, 900);
                SelectObject(hdc1, hbm1);
    
                // we should be hooked as layered at this point
                HDC hdc2 = CreateCompatibleDC(hdc);
                // call DrvCreateDeviceBitmap
                HBITMAP hbm2 = CreateCompatibleBitmap(hdc, 100, 100);
                SelectObject(hdc2, hbm2);
            
                //call DrvBitBlt
                BitBlt(hdc2, 0, 0, 50, 50, hdc1, 0, 0, SRCCOPY);

    2014年7月28日 12:28

全部回复