2015-03-13 3 views
2

Я пытался кодировать изображение с помощью WIC. , и я сделал простую dll (для кодирования/декодирования) и дал ее из другого приложения.WICConvertBitmapSource() дает ошибку ссылки

Я добавил 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 ссылки в функции «ИНТ __cdecl my_bitmap_converter (структура _GUID Const &, структура IWICBitmapSource *, структура 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 
    ); 

ответ

2

если вы упомянули here, вы можете понять, что "имя библиотеки Линк "windowscodecs.lib" вместо "wincodec.lib" в Windows SDK 7.0"

может быть вы используете SDK 7.0 или новее. если это так, попробуйте добавить windowscodecs.lib в качестве дополнительных зависимостей.

+0

это не работает:/ – wicky

+0

какая версия вы используете. – mhs

+0

Я установил несколько версий (от 6 до 8), но в соответствии с regedit текущая версия - 6. Но я все равно включил windowscodecs.lib. которые останавливают ошибку, когда я вызываю эту функцию в более строгой функции выше ошибки. – wicky