визуальная ошибка построения студии: неразрешенный внешний символ _IID_IWICImagingFactory (статическая библиотека MFC) - PullRequest
12 голосов
/ 08 ноября 2011

Я написал программу с несколькими стандартными диалоговыми окнами в проекте SDI (с поддержкой Doc / View).

Теперь, когда я хочу отправить его некоторым друзьям, я установил Use of MFC Use MFC in a static library.

Но когда я пытаюсь построить решение, я получаю следующую ошибку:

ошибка LNK2001: неразрешенный внешний символ _IID_IWICImagingFactory

Моя проблема в том, чтоя не знаю, что именно представляет собой этот идентификатор интерфейса, потому что я не писал никакого кода для COM вручную или с использованием каких-либо фабричных изображений или чего-то подобного ...

Я немного потерян, atm ...

Может кто-нибудь сказать мне, как решить эту проблему и заставить его работать со статическим использованием MFC?

Заранее спасибо!

Ответы [ 3 ]

26 голосов
/ 28 декабря 2011

Существует также файл .lib :

C: \ Program Files \ Microsoft SDKs \ Windows \ v7.0A \ Lib \ windowscodecs.lib

3 голосов
/ 08 ноября 2011

IWICImagingFactory определен в wincodec.idl

  • Найдите и добавьте wincodec.idl в свой проект MFC
  • Перестройка и компилятор MIDL сгенерирует wincodec_i.c и wincodec_i.h
  • wincodec_i. * файлы содержат объявление и определение _IID_IWICImagingFactory
0 голосов
/ 13 ноября 2013

Это была не моя проблема (отличается .idl), но та же ошибка компоновщика.Google все равно нашел ваш вопрос.Я скопировал .idl-файл в новый каталог, запустил командную строку VS и запустил:и выбросил все остальное.

...