ошибка LNK2005: _DllMain@12 уже определяется в MSVCRT.lib

32
задан Himanshu 8 July 2015 в 10:20
поделиться

2 ответа

Если Вы читаете ошибку компоновщика полностью и применяете некоторые знания, Вы можете вовлечь себя там:

компоновщик связывает много собранных объектов и библиотек вместе, чтобы получить набор из двух предметов.

Каждый объект/библиотека описывает

  • , какие символы он ожидает присутствовать в других объектах
  • , какие символы он определяет

, Если два объекта определяют тот же символ, Вы получаете точно эту ошибку компоновщика. В Вашем случае и mfcs80.lib и MSVCRT.lib определяют символ _DllMain@12.

Избавление от ошибки:

  1. узнают, в какой из обеих библиотек Вы на самом деле нуждаетесь
  2. , узнают, как сказать компоновщику не использовать другой одного (использование, например, эти совет от Джеймса Хопкина )
14
ответ дан 27 November 2019 в 19:58
поделиться

Если Вы определяете свой собственный DllMain, в Ваших установках проекта Вы должны установить 'Использование MFC' в 'Свойствах Конфигурации / Общий' 'Использовать Стандартный Windows Libraries'.

Вы должны сделать, чистое восстанавливает после изменения его.

11
ответ дан 27 November 2019 в 19:58
поделиться
Другие вопросы по тегам:

Похожие вопросы: