我正在寻找获取打印屏幕的最快方法,我发现使用Bitblt是我更好的选择,然而,它只适用于设备上下文句柄,这意味着对我来说,要从中检索位图,我必须使用包括CreateCompatibleBitmap在内的多个IntPtr, ByVal hDC As IntPtr) As IntegerPublic Shared Function BitBltIntPtr = Nothing
我有一个windows应用程序,它可以从屏幕上抓取像素,以便录制(以视频的形式)为自定义的屏幕共享格式。问题是,在使用软件光标的计算机上,使用SRCCOPY|CAPTUREBLIT从屏幕上闪动(以便分层窗口也显示在图像中)会导致光标闪烁,如中所述。我已经研究过使用Windows Media Encoder SDK (如下面的代码项目文章中所述),因为它不会导致光标闪烁,但似乎没有直接访问帧数据的方法。不幸的是,实时编码和自定义格式都是必需的,这使得windows Media Encoder