Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.97/32: Рейтинг темы: голосов - 32, средняя оценка - 4.97
10 / 10 / 4
Регистрация: 10.09.2010
Сообщений: 197

Есть .exe, нужно .dll

02.09.2011, 14:19. Показов 6298. Ответов 33
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте,
есть проект, результат компиляции - exe-файл. Задача: сделать exe-файл, как dll-файл, чтобы можно было из другой программы вызывать dll-файл и при этом передавать в dll параметр с помощью которого она будет работать. Подскажите, пожалуйста, как это сделать...
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
02.09.2011, 14:19
Ответы с готовыми решениями:

есть готовое ПО которое состоит из exe, dll - требуется цифровая подпись
привет. есть готовое ПО которое состоит из exe, dll - требуется цифровая подпись. как называются контры которые подписывают, дают эти...

Нужно в .exe засунуть .dll
Здравствуйте. У меня есть программа. Просто 1 .exe. Для работы этой программы нужны две .dll. Есть ли способы засунуть все .dll в один...

Svchost.exe, onion.exe, openvg.exe torrc и куча dll и cl, а также папка tor в Roaming

33
37 / 37 / 5
Регистрация: 12.02.2010
Сообщений: 239
02.09.2011, 18:06
Студворк — интернет-сервис помощи студентам
Так, а теперь еще раз, так ли я вас понял! Вы хотите написать dll, в которую вы хотите поместить определенные функции, а потом из exe файла вызвать эти функции? Так?
0
10 / 10 / 4
Регистрация: 10.09.2010
Сообщений: 197
02.09.2011, 18:15  [ТС]
Я хочу поместить форму и при вызове dll из exe - показать эту форму.
0
145 / 100 / 6
Регистрация: 11.03.2010
Сообщений: 477
02.09.2011, 18:28
Цитата Сообщение от Mr. T Посмотреть сообщение
Я хочу поместить форму и при вызове dll из exe - показать эту форму.
кажетсо мне это фантастика!

за исключением варианта когда форма вызываетса не средствами VCL а написана на чистом АРI Windows.
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.09.2011, 18:28
Цитата Сообщение от Mr. T Посмотреть сообщение
как при вызове dll-ки, в которой содержится форма, эту самую форму и показать
Создание формы в dll

точно - на галоперидоле
0
10 / 10 / 4
Регистрация: 10.09.2010
Сообщений: 197
02.09.2011, 18:42  [ТС]
Спасибо, это уже ближе к теме. Еще остается вопрос: как передать в dll параметр?
0
 Аватар для cpp_developer
20124 / 5691 / 417
Регистрация: 09.04.2010
Сообщений: 22,546
Записей в блоге: 1
02.09.2011, 19:03
RTFM .
0
 Аватар для Lelik-pahan
1709 / 905 / 207
Регистрация: 25.11.2009
Сообщений: 1,858
05.09.2011, 22:30
Mr. T, допустим ты поместил в dll форму Form1 (насколько я понял, с этим ты уже разобрался)
Тогда в cpp файле создай функцию, которая будет показывать эту форму. Также функция может принимать нужные тебе параметры.
C++
1
2
3
4
void FShow(int parametr)
{
Form1->ShowModal();
}
в программе, которая должна вызывать форму из dll подключи h файл с такой строкой
C++
1
extern "C" int __declspec (dllexport) FShow(int parameter)
для подключения dll нужно написать
C++
1
2
3
4
5
6
7
8
9
10
HINSTANCE dllInstance = NULL; //объявляем в начале cpp файла
 
dllInstance = LoadLibrary ("MyDLL.dll");  //так подключаем библиотеку
 
FreeLibrary (dllInstance); //так освобождаем её (например, перед закрытием программы)
 
//получаем из библиотеки функцию FShow и вызываем её
typedef void (*TFShow)(int);
TFShow FShow = (TFShow) GetProcAddress (dllInstance, "_FShow");
FShow(1);
0
Прогер
 Аватар для Programmer.
632 / 263 / 15
Регистрация: 17.11.2010
Сообщений: 1,371
Записей в блоге: 2
06.09.2011, 04:29
Mr. T,
Цитата Сообщение от Mr. T Посмотреть сообщение
Пфф... Project Manager -> Add... -> Unit1.cpp. Если смотреть дерево, появилась ветка Unit1.cpp, в ней три пункта: Unit1.cpp, Unit1.dfm, Unit1.h.
Ага! и ты думаеш что ету форму ты записал в dll?
БЛИИН!


0
18 / 18 / 7
Регистрация: 20.03.2012
Сообщений: 585
16.11.2012, 19:50
Решаю ту же задачу, что и Mr. T.
Есть проект/программа, которая сейчас exe. И необходимо сделать ее частью огромного программного комплекса. Решаю, что лучше: переделать ее в dll или оставить как exe и по необходимости вызывать через ShallExecute, а параметры передавать через командную строку (например имя файла, который нужно загрузить и отобразить)?
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
16.11.2012, 20:41
Цитата Сообщение от Mr. T Посмотреть сообщение
Нужно из одной программы вызвать другую, как dll.
А при чем тут dll ? Как вы это представляете "как dll" ?

Читайте про порождение процессов и обмен данными между приложениями ( типа DDE, или обычными сообщениями )

В любом случае придется организовывать взаимодействия в обоих программах.

Добавлено через 12 минут
Цитата Сообщение от znseday Посмотреть сообщение
Решаю ту же задачу, что и Mr. T.
Есть проект/программа, которая сейчас exe. И необходимо сделать ее частью огромного программного комплекса. Решаю, что лучше: переделать ее в dll или оставить как exe и по необходимости вызывать через ShallExecute, а параметры передавать через командную строку (например имя файла, который нужно загрузить и отобразить)?
Все зависит от того что надо и что есть...

Если в проекте только ф-ции- главное и важна дальнейшее их использование, то создавайте dll.

Если же там формы, окна, компоненты - то лучше второй вариант - ShеllExecute() ,CreateProcess() ( порождение процесса )
ну и при необходимости DDE или оконные сообщения.

Есть вариант еще использовать COM, но тут непросвещен я...
0
18 / 18 / 7
Регистрация: 20.03.2012
Сообщений: 585
18.11.2012, 13:22
Цитата Сообщение от Avazart Посмотреть сообщение
и при необходимости DDE или оконные сообщения.
Я и DDE и COM плохо знаю. В идеале нужно, чтобы программы обменивались не данными, а указателями. Т.е. в одной программе динамически создается TBitMap и рисуются на нем всякие разные штуки. А во второй программе (другой exe'шник) этот BitMap видоизменялся по мере того, как изменения происходят в первой программе, а также могла сама внести изменения в BitMap, который принадлежит другому exe'шнику.
Такое вообще возможно?
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.11.2012, 15:34
В идеале нужно, чтобы программы обменивались не данными, а указателями.
Такое вообще возможно?
Не знаю... для меня это звучит проблематично...


А для DDE есть компоненты ... и тут сложного нет ничего...
0
18 / 18 / 7
Регистрация: 20.03.2012
Сообщений: 585
18.11.2012, 16:38
Просто все время обмениваться данными в 30 МБ (10 Мегапиксельный BitMap) это наверное снизит производительность? Хотелось бы, чтобы был один объект, который можно изменять в обеих программах. С помощью DDE это можно реализовать?
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.11.2012, 16:40
С помощью DDE это можно реализовать?
Без обмена нет, насколько я знаю...

Цитата Сообщение от znseday Посмотреть сообщение
Просто все время обмениваться данными в 30 МБ (10 Мегапиксельный BitMap) это наверное снизит производительность?
Хотите производительность переписывайте код в один проект.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
18.11.2012, 16:40

Есть фаил dll нужно открить и изменить
Есть фаил dll розработчик умер его нужно илменитьт исходников нету знаю только что он отвечает за конект к базе даних там IP адрес, догин и...

Нужно сделать подобную прогу (есть exe файл)
Нужно сделать прогу на exe файл. Хочу поменять там пару моментов, но исходник был утерян, остался только exe файл. Ток скидывайте все...

Есть готовая программа, только EXE-файл без исходников, и по её примеру нужно написать программу в делфи
Есть готовая программа, только EXE-файл без исходников, и по её примеру нужно написать программу в делфи...требуется помощь.

Как множество dll собрать в один dll или exe файл?
Сделал тестовый проектик по работе с БД (Entity Framework), скомпилировал и как глянул в папку Debug....., а там куча dll файлов. Путем...

Куда компилятор csc.exe кладёт скомпилированные .exe/.dll?
Куда компилятор csc.exe кладёт скомпилированные .exe/.dll? Есть батник, компиляция проекта в Visual Studio происходит успешно, никаких...


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

Или воспользуйтесь поиском по форуму:
34
Ответ Создать тему
Новые блоги и статьи
Особенности gif сгенерированных в Си
russiannick 21.10.2026
Рассмотрим генерацию gif файлов, которые в Си имеют свои особенности. Gif представляет собой графический формат популярный в интернете. Посмотрим на палитру. Gif файл сгенерированный в си отличается. . .
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/ TL DR Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru