GetPixel在XP下很快,为什么WIN7就很卡?
本帖最后由 kayoo 于 2012-02-25 04:02:02 编辑 同样的代码,XP下用不了0.1秒,WIN7下却需要几秒钟,获取的时候整个屏幕也卡住了,请问如何解决呢?先谢过了。
PS:我查了一下,有人说XP是GDI显示,WIN7是DirectX显示,我想知道在DirectX下获取屏幕颜色的最佳代码是什么?一定不能那么卡。。。
[解决办法]
scanline效率高一点
[解决办法]
不是吧? 我这里测试 win7 正常速度也是秒取.
你是不是被什么杀毒给控制了?
procedure TForm1.Timer1Timer(Sender: TObject);
var
i : UINT;
begin
i := GetTickCount ;
Label1.Caption := IntToHEX( GetPixel(GetDC(0),Mouse.CursorPos.X,Mouse.CursorPos.Y) , 8 );
label2.Caption := IntToStr( GetTickCount - i );
end;