腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
关于
GetDIBits
和
设备
上下文
的
奇怪
错误
、
、
、
我今天遇到了一个非常
奇怪
的
问题。在VC6上运行下面的代码与MFC项目,它是黑屏,它完美地工作,并显示桌面图片,如果我拿出评论。然而,这些代码是在无限循环中执行
的
,所以我试图像BitBlt
和
CreateCompatibleBitmap等一样减少内存复制
和
内存消耗。我不明白我
的
程序与这些注释代码是如何相关
的
。有人知道问题
的
原因
和
原因吗?SRCCOPY);bitm
浏览 11
提问于2017-06-19
得票数 0
1
回答
HDC在
GetDIBits
中是用来做什么
的
?
、
我使用
GetDIBits
将屏幕兼容
设备
上下文
中
的
位图数据转换为某种格式
的
DIB。我
的
印象是,只有当源位图是每像素8位或更少时,DC才是合成颜色表所必需
的
。由于我
的
源位图是一个完整
的
32位彩色图像,而这是一个一次性
的
程序,并且我手边没有屏幕DC,所以我将HDC参数设置为NULL。这不管用。一旦我抓取屏幕DC并传递它,它就开始工作了。这让我想知道为什么
GetDIBits
需要
设备
浏览 6
提问于2010-10-19
得票数 5
回答已采纳
1
回答
为什么对
GetDIBits
的
调用在Win64上失败?
、
、
、
我有一个对
GetDIBits
的
调用,它在32位中工作得很好,但是在64位上失败了。尽管句柄
的
值不同,但bitmapinfo结构
的
内容是相同
的
。下面是我可以想出
的
最小(至少是稍微有点结构化
的
)代码示例来重现
错误
。我用Delphi 10西雅图更新1进行了测试,但是即使在其他Delphi版本中,这个
错误
似乎也会发生。Bits, BitsSize); buffer := TMyBitmapInfo.Create(bitmap.
浏览 1
提问于2015-12-18
得票数 10
回答已采纳
2
回答
使用Windows
GetDIBits
函数获取位图像素值
、
、
、
、
我试图使用
GetDIBits
函数获取位图
的
像素。由于我没有研究过Windows /API,所以我对第一个参数HDC非常不确定。我已经在这里搜索了无数
的
帖子在SO
和
网上,但一直未能找到信息或例子如何初始化HDC在这个特定
的
情况。以下是我读取像素值
的
步骤: HBITMAP hBitmap = (HBITMAP) LoadImage(0, L"C:/tmp/Foo.bmp" ,IMAGE_BITMAP, 0, 0, LR_LOADFRO
浏览 5
提问于2011-12-28
得票数 3
5
回答
从HBITMAP获取字节
、
如果给我一个hbitmap指针,并且我
的
应用程序是控制台应用程序,我如何从HBITMAP获取图像字节。我尝试使用
GetDIBits
,它需要像HDC这样
的
参数,但我不能得到。LoadImage (0, TEXT("C:\\img1.bmp"), IMAGE_BITMAP, 0, 0, LR_LOADFROMFILE); 我将HBITMAP传递给函数,并期望获得另一个已处理图像
的
HBITMAP
浏览 43
提问于2013-01-08
得票数 5
回答已采纳
2
回答
Visual 2008中
的
glaux.lib
、
、
我可以使用Visual 2005中在Visual 2008中
的
\PlatformSDK\Lib文件夹中找到
的
glaux.lib吗?我不想改变我
的
API,并且需要使用calx.h 看来glaux.lib是不推荐
的
。相反,链接到kernel32.lib、user32.lib、gdi32.lib
和
and 32.lib。
浏览 4
提问于2010-02-18
得票数 2
回答已采纳
1
回答
在C++中查找像素RGB数据
的
最快方法是什么?
、
、
我想查看并存储在一个数组中
的
每个像素
的
RGB数据,在我
的
屏幕上
的
一个100×100平方。我在for循环中使用GetPixel()实现了这个概念,然后将输出转换为十六进制,并将RGB数据存储在数组中,但是这个方法所用
的
时间比我想要
的
要长得多。用c++读取像素RGB数据
的
最快方法是什么?
浏览 2
提问于2020-02-06
得票数 1
回答已采纳
1
回答
在C++中从所选屏幕创建位图时
的
黑色图像
、
、
、
我正在尝试获取所选桌面区域
的
屏幕截图。我从中获取了CreateBitmapInfoStruct();
和
CreateBMPFile();。其余
的
都是我从互联网上截取
的
科学怪人
的
片段。下面是我
的
代码目前
的
样子:#include <iostream>#include <
浏览 0
提问于2012-10-10
得票数 2
回答已采纳
1
回答
OpenGL
上下文
创建失败
、
我试图通过OpenGL API创建一个Win32
上下文
,而不需要像Win32这样
的
包装器。我以前多次这样做过,但这一次我得到了两个
错误
之一;有时当您退出窗口时,应用程序不会结束,但是几秒钟后,应用程序在调试窗口中以以下消息结束:注意,当我不调用安装代码时,
浏览 2
提问于2014-09-07
得票数 0
回答已采纳
1
回答
截图,分析,然后删除
、
我一直在尝试为一个简单
的
在线游戏( php编码
的
游戏)编写一个自动点击程序,但我在分析屏幕上
的
颜色时遇到了麻烦。(英语不是我
的
第一语言,抱歉!)忘了提一下) 我已经尝试过getpixel函数,但由于我
的
chrome窗口缩小了80%以获得完整
的
游戏画面,似乎我遇到了一些与DPI相关
的
问题,但看到这个让我头晕目眩。在看了Codebullet视频后,我认为更好
的
方法是对有问题
的
区域进行屏幕截图,分析它以查看条件是否已填满,然后删除屏幕截图。
浏览 31
提问于2019-05-29
得票数 -2
2
回答
GDI屏幕截图,结果在不同
的
计算机上不同
、
、
、
、
但是,在一些计算机上,图像并不是我想要
的
,你可以在下面看到。//--memset(mImageBuffer, 0, mWxHxS);hScreenDC, mWidth, hScreenDC, mPy,)) 我没有任何
错误
运行我
浏览 3
提问于2016-01-28
得票数 3
回答已采纳
1
回答
DrawIconEx
和
GetDIBits
的
奇怪
行为,α为零
、
、
Native.
GetDIBits
(_windowDeviceContext, _compatibleBitmap, 0, (uint)Height, frame.Data, ref _infoHeader, Native.DibColorMode.DibRgbColors);如果光标是箭头,则它正常工作。 但是,如果我从句柄得到Bitmap,然后保存到磁盘,
浏览 3
提问于2019-11-03
得票数 1
回答已采纳
1
回答
有没有什么快速简单
的
方法来捕捉屏幕
的
一部分?getPixel很慢,而
GetDIBits
看起来有点复杂
、
、
、
、
我尝试了一些代码来使用Windows上
的
getPixel捕获部分屏幕,
设备
上下文
为空(捕获屏幕而不是窗口),但它真的很慢。看起来
GetDIBits
()可以很快,但是它看起来有点复杂...我想知道是否有一个库可以将整个区域放入一个数组中,并且pixelx将返回像素
的
24位颜色代码? 或者这样
的
库在Mac上存在吗?或者如果Ruby或Python已经有这样
的
库可以做到这一点?
浏览 0
提问于2009-05-13
得票数 0
回答已采纳
2
回答
GetDiBits
:在BITMAPINFOHEADER中传递
的
不同尺寸
、
、
、
根据我对这个函数
的
经验,我有一些
关于
GetDiBits
的
问题。我
错误
地创建了一个位图,它是我所需大小
的
两倍:然后,我得到了协同响应数组:
GetD
浏览 1
提问于2018-04-14
得票数 3
回答已采纳
1
回答
使用wm_paint捕获游戏窗口
我试图用SendMessage
和
wm_paint
和
wm_printclient来捕捉游戏窗口。我已经成功地使用了PrintWindow,但是游戏可以改变图形引擎之间
的
变化,对于其中一些引擎,我会得到一个白色
的
矩形。我希望使用SendMessage不会出现这个问题。问题是,由于SendMessage,任何图形引擎,甚至任何程序/窗口,我都会得到一个黑色
的
矩形。BITMAPINFO MyBMInfo = { 0 }; MyBMInfo.bmiHeader.biSize = sizeof(My
浏览 0
提问于2016-12-31
得票数 0
回答已采纳
1
回答
如何将截图位图转换为cv::Mat
、
、
目前,我正在尝试拍摄屏幕截图,然后将其转换为OpenCV可编辑
的
格式。我使用
的
代码来自微软网站。代码使用"Windows.h“库。显然,最简单
的
方法是将位图保存为.bmp,然后使用opencv打开它。BITMAPINFOHEADER bmpInfoHeader; HANDLE memhnd; GetMat()函数工作良好,不输出
错误
,不过我不知道如何检查输出
的
cv::Mat是否正确。
浏览 1
提问于2019-07-25
得票数 1
回答已采纳
1
回答
当使用另一个应用程序
的
HDC时,捕获
的
像素全部为零(bgra)。
、
我可以使用BitBlt
和
GetDIBits
成功地捕获屏幕
的
部分内容,这要归功于尼克·努格特
的
答案中
的
代码。捕获整个屏幕或桌面似乎是可行
的
,但当我提供应用程序
的
HDC时,它会打印
奇怪
的
数据(以bgra格式)。函数GetDeviceCaps表示电子应用程序支持BitBlt,
设备
TECHNOLOGY是raster display。应用程序DC
的
宽度总是全屏,与窗口大小无关:printf("wid
浏览 0
提问于2018-11-19
得票数 1
回答已采纳
2
回答
C++窗口捕获输出与上述窗口大小不同
、
、
、
我在C++中有一个简短
的
程序,可以从这个BlueStacks模拟器窗口捕获像素,然后我将使用OpenCV操作像素,然后根据这里和那里
的
一些决策发送鼠标输入(win32api)。唯一
的
问题是,与整个窗口相比,该函数似乎捕获了较小
的
像素区域。 我该如何解决这个问题呢?我已经在我
的
项目设置中启用了高DPI感知,除了将随机魔数添加到函数中之外,不确定还需要采取什么其他步骤。 我已经用Python语言完成了这个程序,但为了提高性能,我想在C++中重做一次
浏览 0
提问于2018-05-17
得票数 3
1
回答
OpenGL中
的
奇怪
行为
、
、
、
我试图在OpenGL中呈现文本,我就是这样做
的
: 这是密码。DIB_RGB_COLORS); begin raise Exception.C
浏览 2
提问于2013-07-18
得票数 2
回答已采纳
1
回答
具有_imp__
GetDIBits
@28函数
的
未定义引用
GetDIBits
、
、
、
、
我试图在Windows上使用
GetDIBits
函数
和
C++ (与QtCreator一起使用)。代码编译但不能与
错误
链接。对_imp__
GetDIBits
@28
的
未定义引用 到我
的
.pro文件,但是没有什么改变。是正确
的
图书馆还是另一个图书馆?谢谢
浏览 3
提问于2016-07-22
得票数 0
回答已采纳
点击加载更多
相关
资讯
Claude Code 常见的错误和解决方法,如何避免 Claude Code 记忆和上下文的丢失
下列关于数据库中“型”和“值”的叙述中,哪一条是错误的
广东省能源局关于组织征集和更新《广东省节能技术、设备(产品)推荐目录》的通知
在家搭建你自己的AI编程助手:一套完全开源的本地方案
微软卫士发现标记合法的网址为恶意的
热门
标签
更多标签
云服务器
ICP备案
对象存储
云点播
云直播
活动推荐
运营活动
广告
关闭
领券