c++ - 从以 blob 数据类型存储在数据库中的原始图像数据中检索 CImage 对象

标签 c++ mfc blob dynamic-image-generation

我正在开发一个应用程序,其中我将 .png 图像存储到数据库(使用 SQLite3),现在根据我的要求,我希望图像与 ListCtrl 项目一起显示,那又怎样我需要的是根据从数据库中检索到的 blob 数据创建一个 CImage 对象。我目前的做法是,每次我想显示图片时,我都必须将文件写入磁盘,然后将其提取到 listCtrl 项目图像中,我想摆脱这个开销过程。所有的专家都需要你的帮助。请指出正确的方向。我正在使用 VS2010MFC 进行应用程序开发,数据库使用 SQLITE-3。 提前致谢。

最佳答案

将 PNG 复制到内存块 (HGLOBAL) 中。 使用 CreateStreamOnHGlobal 获取 IStream。 比使用 CImage::Load 将其放入 CImage 对象中。

根本不需要使用磁盘文件。

关于c++ - 从以 blob 数据类型存储在数据库中的原始图像数据中检索 CImage 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20674985/

相关文章:

c++ - Producer Consumer 使用 intel-pin 内线程

c++ - Visual C++ __forceinline 奇怪的行为

c++ - 如何在 MFC c++ visual studio 中跟踪或跟踪数组的元素

javascript - 在不丢失数据或压缩的情况下将 blob 转换为 WAV 文件

c++ DirectX 11 源代码样本/示例?

c++ - 无限循环多线程

c++ - 删除 HBITMAP 对象时堆损坏

c++ - 尝试在 MFC 应用程序中包含 <QSettings> 时出错

mysql - MySql TEXT/BLOB 类型的最大声明列长度是多少?

php - 使用 PHP 和 PDO 从 MySQL 检索 MEDIUMBLOB 失败