Daniloff
Помогающий
Offline
|
|
« : 07-05-2010 20:12 » |
|
Делал программу в VS2008. А клиенты жалуются - то у одного, то у другого не работает. Стал разбираться: exe-файл кроме kernel32, user32 и shell32 очень активно юзает такого монстра, как MSVCR90D.dll Что делать? Пришлось перекомпилировать код под VS6.0 Всё! Никаких левых библиотек. Единственно, в чем сомневаюсь, может, и в новой студии как-то можно отключить использование этих монстров?
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #1 : 07-05-2010 20:19 » |
|
а я наоборот, из 6 сконвертил бааашой проект в 2008 - монстров не замечено )
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #2 : 07-05-2010 21:06 » |
|
Леш, может у тебя данная библиотека на всех машинах уже есть? А то ведь с виндой такое бывает... Например, на некоторых компах команды net не было, хотя оная с win95 присутствует во всех версиях. Вопрос для исследования.
Daniloff, попробуй использовать инсталляторы: чтобы они ставили в клиентскую систему нужный dll (совместимый с клиентской ОС!), если его еще нет.
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Вад
|
|
« Ответ #3 : 07-05-2010 22:30 » |
|
Заменить в настройках проекта Multithreaded DLL на Multithreaded. В 2008 студии проекты по умолчанию настроены на динамическую линковку для CRT.
Кстати, MSVCR90D - отладочная. Так и задумано, что дебажная сборка идёт клиентам?
|
|
« Последнее редактирование: 07-05-2010 22:32 от Вад »
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #4 : 07-05-2010 22:37 » |
|
Daniloff, а ты в релизе не пробовал компилировать? А если уж хочется в дебуге, то попробуй установи:
Project properties -> Linker -> General -> Enable Incremental Linking: No
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #5 : 08-05-2010 04:35 » |
|
Ром, если выбирать статическую линковку - то проблем не возникало
|
|
|
Записан
|
|
|
|
resource
Молодой специалист
Offline
Пол:
|
|
« Ответ #6 : 08-05-2010 08:04 » |
|
Так и задумано, что дебажная сборка идёт клиентам? ага как же. Таких примеров пруд пруди. Кто-то чего-то не знает или не умеет, и сразу "студия кривая" и всё такое. Джон, что-то не понял, причем тут Incremental Linking. Что, MSVCR90D перестанет линковаться от этого?
|
|
|
Записан
|
|
|
|
Daniloff
Помогающий
Offline
|
|
« Ответ #7 : 08-05-2010 08:52 » |
|
Кстати, MSVCR90D - отладочная. Так и задумано, что дебажная сборка идёт клиентам?
Опс, не в той папке глядел... Таки да, в релизе без "D"
|
|
|
Записан
|
|
|
|
Daniloff
Помогающий
Offline
|
|
« Ответ #8 : 08-05-2010 08:58 » |
|
Проблема решилась заменой опции "multithreaded DLL" на "multithreaded"
Всем спасибо за советы!
|
|
|
Записан
|
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #9 : 08-05-2010 10:07 » |
|
Джон, что-то не понял, причем тут Incremental Linking. Что, MSVCR90D перестанет линковаться от этого? Нет конечно.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #10 : 08-05-2010 10:07 » |
|
Daniloff, те у тебя в релизе проблемы были?
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Daniloff
Помогающий
Offline
|
|
« Ответ #11 : 08-05-2010 10:10 » |
|
Джон, и релиз, и отладочный билд - оба юзали DLL. Теперь поправил.
|
|
|
Записан
|
|
|
|
RXL
|
|
« Ответ #12 : 08-05-2010 10:17 » |
|
Ром, если выбирать статическую линковку - то проблем не возникало
Леш, не знал, что винда поддерживает статическую линковку Я VC не трогал уже очень давно...
|
|
|
Записан
|
... мы преодолеваем эту трудность без синтеза распределенных прототипов. (с) Жуков М.С.
|
|
|
Джон
просто
Администратор
Offline
Пол:
|
|
« Ответ #13 : 08-05-2010 12:09 » |
|
Джон, и релиз, и отладочный билд - оба юзали DLL. Теперь поправил. Не, это понятно. Я просто хотел уточнить, была ли проблема с релизной версией, с дебужной или с обоими? У меня просто были проблемы с этой длл в дебуге, я нашёл в инете, что можно решить проблему установкой Incremental Linking как в релизие, те в NO. Хотелось бы знать, об у тебя похожая проблема была.
|
|
|
Записан
|
Я вам что? Дурак? По выходным и праздникам на работе работать. По выходным и праздникам я работаю дома. "Just because the language allows you to do something does not mean that it’s the correct thing to do." Trey Nash "Physics is like sex: sure, it may give some practical results, but that's not why we do it." Richard P. Feynman "All science is either physics or stamp collecting." Ernest Rutherford "Wer will, findet Wege, wer nicht will, findet Gründe."
|
|
|
Daniloff
Помогающий
Offline
|
|
« Ответ #14 : 08-05-2010 15:52 » |
|
Джон, у меня-то не было проблем. У клиентов были. (Релиз версия естественно). Лечились установкой VC90Runtime. Но не больно то изящно к программе размером 100 кб скачивать обязательный компонент весом 4 Мб
|
|
|
Записан
|
|
|
|
Алексей++
глобальный и пушистый
Глобальный модератор
Offline
Сообщений: 13
|
|
« Ответ #15 : 09-05-2010 03:48 » |
|
Ром, если выбирать статическую линковку - то проблем не возникало
Леш, не знал, что винда поддерживает статическую линковку Я VC не трогал уже очень давно... по крайней мере относительно MFC - когда на компе коллеги запустил программу (у него студии нету) а она там работать отказалась )) Выбрал "использовать MFC в статической библиотеке" - размер файла увеличился, а проблемы ушли
|
|
|
Записан
|
|
|
|
|
|