У меня есть приложение на C #, которое ссылается на несколько библиотек DLL c #, которые, в свою очередь, используют привязки для вызова функций c ++ в других библиотеках.
Все это прекрасно работает, если я компилирую DLL-библиотеки c ++ с / MTd, но когда яuse / MDd Я получаю исключение XMLParseException в своем приложении C #, жалуясь на то, что оно не может найти какие-либо Dlls (ему не удается найти первый из моих Dll, который я использую).Мое лучшее предположение состоит в том, что использование этого другого переключателя заставляет его изменить путь, по которому он ищет свои DLL, вызывая его сбой.Я использовал DependencyWalker для более детального изучения, и два Dll, которые он фактически не может найти, это «IESHIMS.DLL» и «WER.DLL».Однако я не вижу своих C # Dll в дереве в DependecyWalker.У кого-нибудь есть идеи, что здесь может быть не так?
Кроме того, использование неотладочных эквивалентов (/ MD и / MT) не имеет значения.Несмотря на это, я не могу использовать / MT, так как это вызывает другую ошибку.
РЕДАКТИРОВАТЬ: Я несколько сузил проблему.Когда мое приложение скомпилировано и связано с использованием командной строки VS2010, оно работает нормально, с командной строкой VS2008 оно все равно не может найти Dll.Кто-нибудь знает какие-либо различия между этими двумя версиями VS, которые могут вызвать поведение, которое я описал выше?
Заранее спасибо,