Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.86/29: Рейтинг темы: голосов - 29, средняя оценка - 4.86
Детектор лжи
 Аватар для Afftar
38 / 37 / 1
Регистрация: 12.04.2009
Сообщений: 225

Как в програму добавить скомпилированый ехе файл ?

05.05.2009, 20:05. Показов 5843. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как в програму добавить скомпилированый ехе файл и чтобы при нажатие на кнопку он открывался?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
05.05.2009, 20:05
Ответы с готовыми решениями:

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

Как добавить в папку Resources внешний файл ехе
запустить знаю Process.Start("Resources/open.exe"); а как мне его вначале туда запихать

Потерял cpp файл, а ехе-шник остался. Можно как-то декомпилировать файл обратно?
Потерял cpp файл, а ехе-шник остался. Можно как-то декомпилировать файл обратно?

11
109 / 95 / 9
Регистрация: 19.02.2009
Сообщений: 312
05.05.2009, 20:55
Цитата Сообщение от Afftar Посмотреть сообщение
Как в програму добавить скомпилированый ехе файл и чтобы при нажатие на кнопку он открывался?
Довольно просто. Проще всего - использовать ресурсы. В runtime просто извлекаешь ресурс и, например, через TSream пишешь в файл. Далее - shellexecute(), createprocess() или winexec().

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
procedure ExtractRes (ResType, ResName, ResNewName: string);
var
  Res: TResourceStream;
begin
  Res := TResourceStream.Create(Hinstance, Resname, PChar(ResType));
  Res.SavetoFile(ResNewName);
  Res.Free;
end;
 
ExtractRes('FILES', 'OTHER', mypath + 'file.exe');
 
ShellApi.ShellExecute(handle, 'open', PAnsiChar(mypath + 'file.exe'),  '', '', sw_show);
0
Детектор лжи
 Аватар для Afftar
38 / 37 / 1
Регистрация: 12.04.2009
Сообщений: 225
05.05.2009, 21:47  [ТС]
А поподробнее можна? Я начинающий, сори если что!

Ап, обясните
0
 Аватар для koma_grusha
28 / 29 / 0
Регистрация: 17.04.2009
Сообщений: 73
15.05.2009, 00:54
Цитата Сообщение от alexanderwdark Посмотреть сообщение

ShellApi.ShellExecute(handle, 'open', PAnsiChar(mypath + 'file.exe'), '', '', sw_show);
Начни хотя бы с этой строки, только вместо mypath + 'file.exe' - поставь свой путь
0
Детектор лжи
 Аватар для Afftar
38 / 37 / 1
Регистрация: 12.04.2009
Сообщений: 225
16.05.2009, 16:31  [ТС]
спасибо, а как програму в *.res пихнуть, и как сделать чтобы он при нажатии на button открывался?
0
104 / 104 / 74
Регистрация: 27.05.2009
Сообщений: 201
27.05.2009, 06:36
открываете блокнот, пишите

FILEEXE FILES file.exe

сохраняете, как файл res.rc

открываете блокнот, пишите

brcc32.exe res.rc

сохраняете, как файл

bat.bat

запускаете файл bat.bat, у вас создатся файл res.res

создаете проект delphi

в секцию uses добавляете строку ShellApi

после implementation добавляете {$R res.res}

ниже добавляете

Delphi
1
2
3
4
5
6
7
8
procedure ExtractRes (ResType, ResName, ResNewName: string);
var
  Res: TResourceStream;
begin
  Res := TResourceStream.Create(Hinstance, Resname, PChar(ResType));
  Res.SavetoFile(ResNewName);
  Res.Free;
end;
кидаете на форму кнопку и прописываете событие

Delphi
1
2
3
4
5
procedure TForm1.Button1Click(Sender: TObject);
begin
 ExtractRes('FILES', 'FILEEXE','file.exe');
 ShellApi.ShellExecute(handle, 'open', PAnsiChar('file.exe'),  '', '', sw_show);
end;
Р.S: file.exe - exe файл, который вы хотите добавить в программу
при компиляции программы файл res.res должен лежать в той же папке, что и
созданный проект. Потом его можно удалить.
2
Детектор лжи
 Аватар для Afftar
38 / 37 / 1
Регистрация: 12.04.2009
Сообщений: 225
16.06.2009, 17:59  [ТС]
А можна сделать так 2 программы в 1 проекте?
0
 Аватар для GrabbeR
1 / 1 / 0
Регистрация: 15.03.2010
Сообщений: 45
26.01.2013, 21:28
А как, к примеру, добавить в .res другие типы файлов или целые каталоги?
0
1 / 1 / 0
Регистрация: 23.01.2013
Сообщений: 29
27.01.2013, 09:50
Цитата Сообщение от GrabbeR Посмотреть сообщение
А как, к примеру, добавить в .res другие типы файлов или целые каталоги?
RCData, туда что угодно пихать, кроме каталогов.
Только не пойму, зачем каталоги пихать? Может, проще завести базу данных?
0
 Аватар для GrabbeR
1 / 1 / 0
Регистрация: 15.03.2010
Сообщений: 45
27.01.2013, 19:02
Спасибо, я уже понял как с каталогами тоже. Нужно запаковать в SFX архив все, что нужно. Потом вот так извлечь куда нужно:
ShellExecute(Self.Handle, nil, 'File.exe', PChar(' x -y '+''), nil, SW_HIDE);

Пишу инсталлятор, не хочется как-то каждый файл отдельно по каталогам извлекать. А так все одним махом.
0
1 / 1 / 0
Регистрация: 23.01.2013
Сообщений: 29
27.01.2013, 19:07
GrabbeR, тогда уж можно воспользоваться готовыми решениями по созданию инсталляторов их тьма
0
 Аватар для GrabbeR
1 / 1 / 0
Регистрация: 15.03.2010
Сообщений: 45
28.01.2013, 00:48
Да, но это не оригинально и "по-нубски")) к тому же нужно изменить шаблон и другие данные инсталляции под себя.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.01.2013, 00:48
Помогаю со студенческими работами здесь

Как добавить чтение формата png в ехе, который читает только формат bmp
Скажите пожалуйста, как добавить чтение формата png в ехе, который читает только формат bmp? Собственно дело вот в чем, у меня есть мод...

Как создать ехе файл
Здравствуйте как создать ехе файл? чтобы программа создавала еще один ехе файл который бы выдавал какое нибудь сообщение msgbox...

Как запустить ехе-файл
Здравствуйте, товарищи! Помогите пожалуйста. Делаю вот так: EXECUTE xp_cmdshell 'NOTEPAD.EXE' Процесс запускается, но в фоне. Вижу...

Как создать ЕХЕ файл в VB?
Необходимо!!! На VB сделать *.exe файл чтобы он зыпускал приложение написанное на VBA. Сапасибо.

Как запихнуть *.ocx в ЕХЕ файл?
А возможно ли вообще его туда запихнуть? Если можно, то как??? Просто жизненно необходимо. P.S. не хочу делать инсталлятор...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru