2

我试图使用 WIC 对图像进行编码。我制作了简单的dll(编码/解码)并从另一个应用程序中引用它。

我添加my_bitmap_converter()了一个打算使用的转换,WICConvertBitmapSource()但它给了我一个链接错误。这是我的工作

int my_bitmap_converter
(
    REFWICPixelFormatGUID dstPixelFormt, 
    IWICBitmapSource* piBitmapSource, 
    IWICBitmapSource** ppiBitmapDst
)
{
    IWICBitmapSource* piScr = piBitmapSource;
    IWICBitmapSource** ppiDst = ppiBitmapDst;

    hr = WICConvertBitmapSource
        (
        dstPixelFormt,//GUID_WICPixelFormat128bppPRGBAFloat, 
        piScr,
        ppiDst
        );
    if (SUCCEEDED(hr))
    {
        piScr->Release();
        return 0;
    }
    return -1;
}

我怎样才能摆脱这个错误

错误 1 ​​错误 LNK2019:未解析的外部符号 _WICConvertBitmapSource@12 在函数“int __cdecl my_bitmap_converter(struct _GUID const &,struct IWICBitmapSource *,struct IWICBitmapSource * *)”(?my_bitmap_converter@@YAHABU_GUID@@PAUIWICBitmapSource@@PAPAU2@@Z) 中引用

---wincodec.h---

HRESULT WINAPI WICConvertBitmapSource(
     _In_ REFWICPixelFormatGUID dstFormat, // Destination pixel format
     _In_reads_(1) IWICBitmapSource  *pISrc,    // Source bitmap
     _Outptr_result_buffer_(1) IWICBitmapSource **ppIDst   // Destination bitmap, a copy or addrefed source
     );
4

1 回答 1

3

如果您在此处提及,您可能会意识到“链接库名称是“windowscodecs.lib”,而不是 Windows SDK 7.0 中的“wincodec.lib””

也许您正在使用 SDK 7.0 或更高版本。如果是,请尝试添加 windowscodecs.lib 作为附加依赖项。

于 2015-03-13T04:17:26.383 回答