С Новым годом! Форум программистов, компьютерный форум, киберфорум
Visual C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
0 / 0 / 0
Регистрация: 02.02.2009
Сообщений: 30

Как создать дистрибутивный пакет, чтобы можно было запускать приложение на другой машине?

26.03.2010, 14:51. Показов 3303. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет!
Я создал небольшой проЭкт на VC++7 в среде VS.Net. Как создать дистрибутивный пакет, чтобы можно было запускать приложение на другой машине, где не установлен VS.Net???
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.03.2010, 14:51
Ответы с готовыми решениями:

Как создать папку и обеспечить, чтобы можно было запускать эти программы, но нельзя было бы их скопировать, переместить, удалить
Подскажите, как создать папку и обеспечить, чтобы можно было запускать эти программы, но нельзя было бы их скопировать, переместить,...

Как сделать, чтобы приложение Winforms можно было запускать из командной строки с аргументами
как сделать чтобы приложение winforms можно было запускать из командной строки с аргументами

Как создать программу в С++, чтобы его можно было запускать как исполняемый .exe файл?
Здравствуйте! Собственно вся суть сабжа содержится содержится в сабже :) допустим: // ConsoleApplication3.cpp: определяет точку...

8
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
28.03.2010, 22:17
Теперь создай другой проект используя Setup Wizard из папки Setup and Deployment Projects. Там все интуитивно понятно.

Удачи, Владимир
0
0 / 0 / 0
Регистрация: 02.02.2009
Сообщений: 30
29.03.2010, 16:44  [ТС]
Я создал откомпилированную папку Release своего пректа. Создал новый проект с помощью Wizard, добавив в него файлы из этой папки. При развертывании проэкта на другом комп. ему не хватает системных файлов (DLL MFC71.DLL и др.). Какие файлы надо добавлять в свой созданный проэкт и как это делать?
0
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
29.03.2010, 22:01
Мне казалось, что Setup Wizard сам добавляет библиотеки MFC runtime. По-моему, мне ничего не пришлось делать, но раз уж это не так, то все можно добавить ручками. Узнать какие библиотеки необходимо подключить можно при помощи Dependency Walker. Эту утилиту можно найти в папке:
C:Program FilesMicrosoft Visual Studio .NET 2003Common7ToolsBin

файл с названием: Depends.Exe

Он покажет все библиотеки которыми пользуется ваша программа, многие из них являются системными и их подключать не нужно!

В Вашем случае скорее всего понадобится подключить MFC71.dll и msvcr71.dll

Удачи, Владимир
0
0 / 0 / 0
Регистрация: 02.02.2009
Сообщений: 30
30.03.2010, 12:10  [ТС]
Узнал с помощью утилты Dependency Walker каких файлов не хватает. В мой проект вообще ни один системный файл не добавляетсся. Что я не так делаю?
Свой проект компилирую при установке Build - Release. Создал проэкт с помощью Setup Wizard, добавляя туда файлы из созданной папки Release. Откомпилировал проект этот проэкт тоже как Release. Что я упускаю, или каке надо настроить опции, чтобы правильно создать дистрибутив?
0
7 / 7 / 12
Регистрация: 13.02.2007
Сообщений: 1,255
31.03.2010, 00:31
HOW TO: Как создать установочный дистрибутив программы средствами Visual Studio.NET

==================================
Часть 1. Создание демонстрационной программы типа Hello World.
==================================
1. Запустить среду Visual Studio.NET
2. Создание нового проекта
__2.1. Меню File->New->Project... (или Ctrl + Shift + N)
__2.2. Выбрать тип проекта (Project Types): Visual C++ Projects->MFC
__2.3. Выбрать шаблон (Templates): MFC Application
__2.4. Дать название проекту (Name) и определить его место расположения на диске (Location): MyApplication, D:HomeProjectsMyProjects
__2.5. Нажать OK
__2.6. Определить тип и начальные параметры приложения используя MFC Application Wizard
__2.7. Параметры Application Type
____o Application Type: Dialog based
____o Resource language: English (United States)
____o Project style: MFC standard
____o Use of MFC: Use of MFC in a shared DLL
__2.8. Параметры User Interface Features оставить такими как есть: System menu и About box выбраны, все остальные отключены. По желанию можно изменить заголовок диалога – Dialog title.
__2.9. Параметры Advanced Features также оставить как есть: из всех доступных к изменению параметров выбраны только ActiveX controls и Common Control Manifest
__2.10. Параметры Generated Classes лучше совсем не трогать, до тех пор пока не прийдет полное понимание структуры MFC приложения.
__2.11. Нажать кнопку Finish
3. Добавление простейшей функциональности
__3.1. Найти выползающее меню инструментов (Toolbox) и во вкладке Dialog Edito выбрать пункт Button.
__3.2. Разместить кнопку на форме
__3.3. Выделить добавленную кнопку и в панели свойств объекта (Properties) изменить значение параметра Caption на Hello World и значение параметра ID на ID_BUTTON_HELLO.
__3.4. Нажать Enter
__3.5. Двойным нажатием мышки на добавленную кнопку (Hello World) добавить стандартный обработчик – CMyApplicationDlg::OnBnClickedButtonHell o (совершается автоматически).
__3.6. Внутри обработчика вывести сообщение о приветствии всему миру:
____void CMyApplicationDlg::OnBnClickedButtonHell o()
____{
________AfxMessageBox('Hello World!');
____}
4. Откомпилировать и запустить программу для теста.
__4.1. Меню Debub->Start (или F5)
__4.2. На вопрос “Would you like to build them?” ответить “Yes”.
__4.3. Убедиться, что программа работает так как и ожидалось.
5. Откомпилировать Release версию
__5.1. Выбрать меню Build->Configuration Manager... и установить Active Solution Configuration в Release (или просто выбрать конфигурацию Release в выпадающем списке Solution Configuration в панели инструментов)
__5.2. Построить приложение, выбрав меню Build->Build Solution (Ctrl + Shift + B). В качестве альтернативы можно попытаться запустить проект (F5) и ответить Yes, как это было описано в предыдущем пункте.
6. Разработку приложения можно считать успешно завершенной


==================================
Часть 2. Создание дистрибутива для распространения
==================================
1. Добавить новый проект для дистрибутива к проекту только что созданного нами приложения
__1.1. Меню File->Add Project->New Project...
__1.2. Выбрать тип проекта: Setup and Deployment Projects
__1.3. Выбрать шаблон: Setup Project
__1.4. Дать название и определить место расположения проекта на диске: SetupMyApplication, D:HomeProjectsMyProjects
__1.5. Нажать OK
2. Конфигурация программы установки дистрибутива
__2.1. Вызвать контекстное меню папки Application Folder и выбрать меню Add->Project Output...
__2.2. В списке проектов выбрать MyApplication (там должно быть только оно, в случае если в Solution включено более одного проекта, они все будут перечислены в этом списке)<B
1
4 / 4 / 3
Регистрация: 25.05.2009
Сообщений: 2,576
31.03.2010, 00:43
Вова - лучший, всем бы так на вопросы отвечать
0
0 / 1 / 3
Регистрация: 27.03.2012
31.03.2010, 00:44
это ж надо было так задолбать уважаемого Владимира, чтобы он такой детальный мануал написал

респект и уважение тов. boombastik :-)))

(честно, без балды)
0
0 / 1 / 3
Регистрация: 27.03.2012
31.03.2010, 00:47
P.S.

предлагаю учредить премию за самый полезный ответ и номинировать на нее Владимира (может даже пожизненно :-)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
31.03.2010, 00:47
Помогаю со студенческими работами здесь

Как правильно указать путь к файлу Word-шаблону чтобы проект можно было запускать с других компьютеров?
Подскажите пожалуйста!!! Как правильно указать путь к файлу Word-шаблону(по которому строится отчет из бд) чтобы проект можно было...

Как узнать какой репозиторий подключить, чтобы можно было устанавливать определенный пакет через sudo apt-get install
Это может показаться смешным... но все же... часто возникает проблема, что sudo apt-get install (например libpng-devel) ...

Можно ли упаковать в exe'шник используемые в проекте библиотеки так, чтобы можно было запустить программу на машине без .NET
Я погуглил, но нашел только очень дорогие программы. А хотелось бы узнать насчет предложенного мной способа)

Как можно создать таймер на сервере, чтобы периодически запускать процедуру?
Подскажите, как можно создать таймер на сервере, чтобы периодически запускать процедуру?

Как добавить Android-проект в Eclipse с Android SDK, чтобы после его можно было запустить на виртуальной машине?
Вот у меня с интернета скачан готовый андрой-проект, но я не знаю как его добавить в остальные проекты чтобы запустить на виртуальной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и источниками (напряжения, ЭДС и тока). Найти токи и напряжения во всех элементах. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru