bitblt

    1热度

    1回答

    与CScrollWindowImpl void Scroll::DoPaint(CDCHandle hDC) { if (_MemDC==NULL) return; RECT r; //I'd like to update r with rcPaint from the DC's PAINTSTRUCT here hDC.BitBl

    0热度

    1回答

    我有一个Windows 10的大问题,通常我使用PIL(Python)从程序中获得一个很好和干净的屏幕截图。 但与Windows 10这不工作了,现在我只成为桌面上的所有东西,但我的FullScreen窗口丢失。 我也tryed使用: BitBlt(screen_copy, 0, 0, width, height, screen, left, top, SRCCOPY | CAPTUREBLT)

    0热度

    1回答

    我正在使用emf进行缓冲区绘制的应用程序。我试图使用BitBlt将此emf保存到位图图像文件。但没有图纸保存到位图。我知道我可以使用PlayEnhMetaFile(),但我必须使用BitBlt或GDI/GDI +调用。因为在将其保存到位图后会有其他一些绘图调用。 示例代码。 void CTestGUIApplicationView::OnDraw(CDC* pDC) { CRect oRect

    5热度

    1回答

    我目前正在从Qt3移植到Qt5的开源解决方案(Albatross ATM解决方案http://www.albatross.aero/)。 信天翁是一个空中交通观众,需要非常好的表演。 我已经能够管理的各种问题,但不是显示部分。 显示架构基于bitblt命令,该命令首先将一个像素图复制到另一个像素图中,最后将像素图复制到屏幕。 这里是QT3显示代码(工作和高性能): void CAsdView::p

    0热度

    1回答

    我想更好地理解Visual C++的怪癖。因此,我已经到了制作一个空窗开始的节目的阶段,但是当你点击时,会出现红色和蓝色方格的检查板(它对眼睛不好,但是它有效)。如果再次单击它们,方块也会在两种颜色之间交替。每个正方形都是100x100像素,我在我的项目文件夹中有它们的图像文件(我知道我可以使用BitBlt的最后两个整数区域来使用一个半蓝色,半红色的图像,因此不需要toPaint,但是这不是这里的

    1热度

    1回答

    上午使用bitblt API来捕获窗口屏幕大约需要30到40毫秒,但我想以更快的方式做到这一点,所以是任何其他内置API或建议我最好的屏幕捕获驱动程序。 这是我的代码。 ret = BitBlt(m_pGDI->hDoubleBufferWorker,0,0,this->m_screenWidth, this->m_screenHeight,hDisplayDC,this->m_sc

    1热度

    1回答

    这个问题类似于this one,特别是this one但我期望的输出是不同的。我试图使用opencv捕获桌面到视频。首选的输出是使用divx编码的avi文件。一般来说,我对opencv和位图编程是新手。 作为第一步,为了确保divx编解码器存在,我创建了一个纯色(黄色)的单帧(cv :: Mat),并将100次写入视频文件,如下所示: int main(int argc, char* argv[]

    0热度

    1回答

    我的程序的目的是每1/16秒进行一次屏幕截图,并通过套接字发送给远程服务器。 目前这个程序可以使用BMP格式的屏幕截图,但是BMP格式的数据有太多的字节要发送,这显然会拖慢send和recv过程。 我的想法是:如果我可以将BMP转换成PNG,并在发送之前压缩它,也许程序可以更顺畅地工作。 这里是我的代码,从gh0st项目 LPVOID m_lpvFullBits = NULL; HDC m_hF

    -2热度

    1回答

    我试图在C++中创建一个屏幕捕获DLL并将生成的字节数组发送到C#。 我能够得到返回到C#的大小,但字节数组始终为空。 这里的C++代码(由位的我在互联网上找到) __declspec(dllexport) int ScreenCap(BYTE* *data, DWORD *size) { try { //BITMAP bmpScreen; HWND De

    1热度

    1回答

    我创建了一个客户端,它通过TCP向服务器发送屏幕截图。图像发送成功。然而,在接收时,图像是颠倒的(我知道这是由结构的一个属性中的负高度设置的)。 我在互联网上搜索的方式,但我找不到一个正确的方式来实现这一点。所以,如果有更好的方式做到这一点,请纠正我。 这是我送的截图(客户端): HDC ScreenDC = GetDC(0); HDC hMemory = CreateCompatibleDC(