У меня есть решение в VS 2008, которое создает DLL. Затем я использую эту DLL в другом приложении. Если я перейду к страницам свойств проектов DLL и изменим следующую конфигурацию для сборки DEBUG, тогда построенная dll не даст требуемой функциональности. Если я изменил его и перестроил DLL, DLL действительно обеспечит правильную функциональность:
Страницы свойств = > Свойства конфигурации = > C/С++ = > Генерация кода = > Библиотека времени выполнения
Если установлено значение "Многопоточная отладка DLL (/MDd)" то все работает так, как должно. Я получаю правильную функциональность из DLL
Если установлено значение "Многопоточная DLL (/MD)" , тогда DLL не работает должным образом... никаких ошибок во время выполнения или чего-то еще, t work (DLL должна накладывать некоторые строки на карте, но не в этом режиме).
Итак, вопрос в том, почему использование флага /MDd приводит к функциональности коррекции базового кода, в то время как /MD приводит к неправильной функциональности?
Немного фона... кто-то другой разработал DLL на С++, и я использую эту DLL в приложении VB.net.