| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > C/C++: Для новичков > запустить программу без инсталлятора |
| Автор: sidor 15.6.2008, 15:58 |
| Написал программку на C++. Собирал под Visual C++ 2005. Программа имеет GUI. Не могу запустить на другом компе если на нем не установлен Visual C++ 2005. Насколько я понимаю, не хватает библиотек, скопировал кучу библиотек в текущий каталог - не помогло, в Windows\system32 - не помогло. При попытке запуска получаю сообщение "Приложение не было запущено, поскольку оно не корректно настроено. Повторная установка приложения может решить данную проблему." В чем может быть причина ? Посоветуйте чтото пожалуста. Раньше поступал также с программами собранными под VC++ 6.0 - все было нормально. Спасибо. |
| Автор: susanin 15.6.2008, 18:06 |
| так компилить надо убрав галочки build with run time libraries....не помню где это искать..темы подобные сто раз полднимались. Добавлено через 1 минуту и 57 секунд в борланде это выглядит следующим образом.. Project - Options - Packeges убрать галочку "Build with runtime packages" Добавлено через 11 минут и 55 секунд В опции проекта, C/C++, Code Generation, Runtime Library = Multitraded -- это для VS 2008. |
| Автор: jonie 15.6.2008, 22:07 |
| кроме всего прочего добавлю что есть в составе VS прога, зовется depends (в консоли вызовите) она умеет показывать в удобной форме каких длл-ок не хватает |
| Автор: susanin 15.6.2008, 22:11 |
| jonie, а можно поподробней про эту прогу? где ее найти? просто в консоли прописать depends?? есть ли она в express версии? |
| Автор: sidor 15.6.2008, 22:14 |
| Не, ну тогда исполняемый модуль оч большой получится а кроме того программка у меня не из одного исполняемого модуля состоит. Исполняемый модуль подгружает еще кучу DLL (25 штук - в зависимости от прав пользователя). И каждый DLL скорее всего в размерах вырастет. Уверен что есть какое-то простое решение, просто я его не знаю. Или библиотеку специальную надо кудато положить, или в реестр чтото прописать. Я токо не понимаю Билли - зачем было все усложнять. Если собирать проект под VC 6.0 то обо всех отсутствующих библиотеках я получаю вразумительное сообщение. Почему в данном случае я получаю какоето безинформативное сообщение - хз. |
| Автор: jonie 15.6.2008, 22:56 |
| http://www.dependencywalker.com/ |
| Автор: sidor 17.6.2008, 10:51 | ||
ага, спасибо посмотрю |
| Автор: LostSoul 17.6.2008, 12:20 |
| А если в настройках сделать Active Configuration - Release и Use Standard Windows Libraries или Use MFC in a static library, то должно зарабтаь, попробуй. |
| Автор: Rififi 17.6.2008, 16:40 |
| программа собранная с динамической линковкой требует на target-системе установленного "Microsoft Visual C++ 2005 Redistributable Package". Иначе можно таскать с собой dll'ки и распространять приложение вместе с манифестом подробности тут: http://msdn.microsoft.com/en-us/library/ms235291.aspx |