Создание неуправляемой DLL C ++ с использованием VS2010 - PullRequest
4 голосов
/ 11 декабря 2011

Я создал проект dll в VS2010 (консольное приложение Win32> dll).Я кладу некоторые файлы заголовков в проект при компиляции, я получаю эту ошибку:

error LINK2001: unresolved external symbol _dllmaincrtstartup@12

Что это?Как мне это исправить?
Также заголовочные файлы определяют количество абстрактных классов.

Ответы [ 2 ]

0 голосов
/ 25 февраля 2014

Используйте параметр / NOENTRY , который необходим для создания только для ресурсов DLL . Используйте эту опцию, чтобы запретить LINK связывать ссылку на _main в DLL.

Страницы свойств проекта -> Компоновщик -> Дополнительно: Нет точки входа установлен на Да (/ NOENTRY)

" DLL , содержащая объекты, скомпилированные с / clr, не связана с / NOENTRY ; изображение может работать некорректно" http://support.microsoft.com/kb/814472

0 голосов
/ 11 декабря 2011

Q: Это DLL-файл, который не удается построить (а не .exe-файл, который использует .dll), правильно?

Q: Есть ли в вашем источнике .dll функция DllMain ()?

Если нет, рассмотрите возможность добавления?

В: Вы уверены, что настройки проекта настроены для «DLL»? Для "/ MT" (многопоточная, статическая ссылка)?

В: В противном случае, рассматриваете ли вы возможность создания НОВОГО проекта, создания «hello world» .dll и проверки его сборки?

...