Не грузиться дебаговская версия DLL, сделанная в VS2005,
LoadLibrary возвращает 14001 ("приложение не установлено полностью, переустановите его бла-бла-бла..").
Может она использует какие-нить библиотеки от студии, которых ненаходит ? Если так, то как их влинковать в dll-ку ?
Здравствуйте, shvonder, Вы писали:
S>Не грузиться дебаговская версия DLL, сделанная в VS2005, S>LoadLibrary возвращает 14001 ("приложение не установлено полностью, переустановите его бла-бла-бла.."). S>Может она использует какие-нить библиотеки от студии, которых ненаходит ? Если так, то как их влинковать в dll-ку ?
Как правило это msvc71(или 80)D.dll и иже с ней. Посмотри зависимости этой dll с помощью стандартной вижалковской утилиты: Depends.Exe
Для статической линковки — покопайся в настройках проекта.
Но вообще то использовать дебажные либы с обычной прогой — не очень хорошей стиль.
Здравствуйте, shvonder, Вы писали:
S>Не грузиться дебаговская версия DLL, сделанная в VS2005, S>LoadLibrary возвращает 14001 ("приложение не установлено полностью, переустановите его бла-бла-бла.."). S>Может она использует какие-нить библиотеки от студии, которых ненаходит ? Если так, то как их влинковать в dll-ку ?
Только дебаговская?
У меня похожая проблема с exe была. Помогло ковыряние с манифестом в настройках проекта:
Здравствуйте, NikeByNike, Вы писали:
NBN>Как правило это msvc71(или 80)D.dll и иже с ней. Посмотри зависимости этой dll с помощью стандартной вижалковской утилиты: Depends.Exe NBN>Для статической линковки — покопайся в настройках проекта. NBN>Но вообще то использовать дебажные либы с обычной прогой — не очень хорошей стиль.
Да, как это обычно бывает, я не первый . Копирование msvc[..]80D.dll,разумеется,не помогло и пришлось влинковать рантайм в мою DLL (заветный ключик /MTd).
Однако непонятно следующее: есть exe, не использующий манифесты (собран Delphi7), и есть DLL, загружающая другие DLL (MSVCR80D.dll, например) через манифест. Получается, что без статической линковки этих дополнительных DLL-ек не обойтись (WinXP)? Или как-то можно этот манифест к DLL прицепить ? Мой предыдущий компилятор обходился без мнифеста этого несчастного
shvonder пишет:
> <http://www.codeproject.com/KB/cpp/vcredists_x86.aspx>,не помогло и > пришлось влинковать рантайм в мою DLL (заветный ключик /MTd).
> через манифест. Получается, что без статической линковки этих > дополнительных DLL-ек не обойтись (WinXP)? Или как-то можно этот
Если вы используете .DLL, то за очень редким исключением CRT тоже
должен быть в .DLL, так что статически линковать вам CRT скорее
всего нельзя (/MTd).