Как Вы говорите Экспрессу Visual C++ 2008 для статичного соединения библиотек времени выполнения вместо динамично? Мои exes в настоящее время не работают на компьютерах w/o своего рода установленный VS, и я хотел бы изменить это.:)
Извините, у меня нет VC ++ Express для тестирования, но в стандартной версии я использую Project Properties -> Configuration Properties -> C / C ++ -> Code Generation -> Runtime Library. Dll и Dll Debug предназначены для динамического связывания.
Ты на 100% уверен, что хочешь это сделать? Пожалуйста, учтите, что если вы это сделаете, и в библиотеке времени выполнения будет обнаружена уязвимость безопасности, компания Microsoft не сможет исправить ваше приложение с помощью Windows Update.
Другое решение - это упаковка дистрибутива Visual C++ Runtime Redistribtable с вашим приложением. Оно устанавливается очень быстро и не требует Visual Studio. Также важно отметить, что не следует распространять код, скомпонованный с отладочными библиотеками времени исполнения, так как для этого требуется Visual Studio. Подробнее об упаковке дистрибутива смотрите в посте блога .
РЕДАКТИРОВАНИЕ : С учётом этого, всё зависит от вас. Я просто хочу сказать, что вы не должны пренебрегать динамическим компоновкой, основываясь исключительно на идее, что у пользователей должна быть установлена "какая-то VS", что не так.
См. Ответ на этот вопрос: Как сделать полностью статически связанный .exe с Visual Studio Express 2005? Отказ Это для VS2005 Express, но ответ все еще держит.
Для C-Runtime перейдите к проекту Настройки, выберите C / C ++, затем «код» Поколение'. Изменить время выполнения Установка библиотеки для «многопотативной» вместо «многопотативной DLL».
Если вы используете любые другие библиотеки Возможно, вам понадобится сообщить линкеру игнорировать динамически связанный CRT явно.