У меня есть компьютер с Windows 7 с установленным пакетом обновления 1 (SP1) для Visual Studio 2005. Используя это, я создаю приложение, которое загружает DLL во время выполнения, скомпилированную с VS2005 SP1, но в Windows XP. Это не удается со следующей ошибкой:
«... \ foo.dll»: не удалось запустить приложение, поскольку его параллельная конфигурация неверна. Пожалуйста, просмотрите журнал событий приложения или воспользуйтесь средством командной строки sxstrace.exe для получения дополнительных сведений.
Загруженная DLL компилируется для отладки CRT. Ответ на этот вопрос намекает, что vcredist_x86.exe содержит только релизные версии CRT. Я не уверен, что это актуально в данном случае, поскольку и на моем компьютере, и на компьютере, на котором была скомпилирована DLL, установлен полный VS2005 SP1.
Следует ли мне пытаться перестроить DLL в Windows 7 (я бы предпочел не делать этого), и приведет ли это к невозможности использования библиотеки DLL на компьютере с Windows XP?