当前位置: 首页 > 面试题库 >

如何使用GDI +和C ++从SQL Server数据库加载和保存图像?

闻人业
2023-03-14
问题内容

我需要专门加载另存为斑点的JPG图像。GDI +使从文件而不是从数据库检索图像非常容易…


问题答案:

看一下Image :: Image(IStream *,BOOL)。这需要一个指向实现IStream接口的COM对象的指针。您可以通过使用GlobalAlloc分配一些全局内存,然后在返回的句柄上调用CreateStreamOnHGlobal来获得其中之一。它看起来像这样:

shared_ptr<Image> CreateImage(BYTE *blob, size_t blobSize)
{
    HGLOBAL hMem = ::GlobalAlloc(GMEM_MOVEABLE,blobSize);
    BYTE *pImage = (BYTE*)::GlobalLock(hMem);

    for (size_t iBlob = 0; iBlob < blobSize; ++iBlob)
        pImage[iBlob] = blob[iBlob];

    ::GlobalUnlock(hMem);

    CComPtr<IStream> spStream;
    HRESULT hr = ::CreateStreamOnHGlobal(hMem,TRUE,&spStream);

    shared_ptr<Image> image = new Image(spStream);  
    return image;
}

但是带有错误检查等功能(这里为了使事情更清楚而省略了)



 类似资料:
  • 问题内容: 我正在用Swift编写iOS游戏,但我想在结尾加上高分标签。我认为保存功能是正确的,但负载之一就是给我带来麻烦的功能。我已经创建了一个实体(“ BestScores”)和属性(“ classicBestScoreTF”): 要保存最高分: 它不起作用:(请帮忙! 问题答案: 保存数据: 加载数据中:

  • 4.使用自定义适配器在ListView中显示图像。 我只是对步骤1和2有问题。我可以从服务器获取新闻,并在我的ListView中显示它们 并通过在我的适配器中添加以下代码显示缓存中的图像:

  • 问题内容: 如何在MySQL中插入图像,然后使用PHP检索图像? 我在这两个领域的经验都很有限,我可以使用一些代码让我着手解决这个问题。 问题答案: 首先,您创建一个MySQL表来存储图像,例如: 然后,您可以将图像写入数据库,如下所示: 您可以使用以下方法在网页中显示数据库中的图像:

  • 问题内容: 87 58 如何将Python的Selenium WebDriver中的所有cookie保存到txt文件,然后稍后加载?该文档并没有说太多有关getCookies函数的内容。 问题答案: 你可以使用pickle将当前cookie保存为python对象。例如: 然后再将它们添加回去:

  • 问题内容: 我有以下代码供用户单击按钮使用,当他们单击按钮时,正在查看的特定字符串将被收藏并存储在其他位置。 我有两个问题。 我现在所拥有的是什么问题?因为当您单击按钮时它会崩溃。 您将如何完成将要加载的字符串并将其保存到数组的load array方法,以便用户以后可以看到该数组? 谢谢你的时间!! 原木猫 问题答案: 函数返回。您可能想要像这样使用它: 该数组可以稍后在第二部分中使用。希望这可以