Ошибка компоновщика IdnToAscii

Я пытаюсь использовать IdnToAscii в своем коде. Согласно msdn

http://msdn.microsoft.com/en-us/library/windows/desktop/dd318149(v=vs.85).aspx

все, что мне нужно, это kernel32.dll. Но я получаю сообщение об ошибке при попытке построить:

Ошибка 1 error LNK2019: ссылка на неразрешенный внешний символ __imp__IdnToAscii@20 в функции _wmain.

Включение normaliz.lib в проект решает проблему.

Вопрос в том, почему я должен его включать. Это несоответствие в документации msdn или я что-то упустил.

Спасибо


person HARUT HARUT    schedule 31.10.2014    source источник


Ответы (1)


Пожалуйста, проверьте параграф «Требования» в MSDN: https://msdn.microsoft.com/en-us/library/windows/desktop/dd318149%28v=vs.85%29.aspx

Там вы можете увидеть, что метод IdnToAscii находится в Normaliz.dll (не kernel32.dll), и чтобы использовать этот метод, вы должны включить Normaliz.lib.

person Dmytro Khmara    schedule 20.10.2015
comment
Я предполагаю, что ребята из msdn недавно добавили эту зависимость. Как видите, я прокомментировал пост, который вы упомянули. Итак, когда я писал этот комментарий, ядро ​​​​32 упоминалось как требование. В любом случае Спасибо за ваш ответ. - person HARUT HARUT; 21.10.2015