Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Программа и интерфейс
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 31.01.2010, 20:48
fantomba fantomba вне форума
Прохожий
 
Регистрация: 24.12.2008
Сообщения: 23
Репутация: 10
По умолчанию передача данных из dll в основную программу

Только начал пользоваться dll.
Вопрос: по нажатию кнопки открывается подключается бблиотека и открывается форма из этой библиотеки. Пользователь выполняет тест на форме библиотеки, вычисляеются результаты функциями библиотеки. Проблема в том, как передать вычесленные данные из библиотечной формы в основную?
Ответить с цитированием
  #2  
Старый 01.02.2010, 08:05
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

В теле ф-ии создаешь форму, когда форма вернет ShowModal = mrOk выделяешь память, заносишь туда данные с формы и возвращаешь указатель на память с данными.
Код:
function SomeFunction(arguments:pointer):pointer;stdcall;
....
В программе
Код:
var SomeFunction:function(arguments:pointer):pointer;stdcall;
...
procedure TFrmMain.Button1Click(sender:tobject);
var hDll:thandle;
begin
  hDll := LoadLibraryA(PChar('DllName.dll'));
  //обработчик ошибки загрузки
  SomeFunction := GetProcAddressA(hDll,PChar('SomeFunction'));
  //далее вызываешь саму функцию
end;
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию

Последний раз редактировалось M.A.D.M.A.N., 01.02.2010 в 08:12.
Ответить с цитированием
  #3  
Старый 01.02.2010, 22:07
fantomba fantomba вне форума
Прохожий
 
Регистрация: 24.12.2008
Сообщения: 23
Репутация: 10
По умолчанию

M.A.D.M.A.N., если не сложно, поясни подробней принцип действия своего варианта.
непонимаю как это поместить форму в тело функции...
Думал сделать чтобы по завершению теста на форме из длл нажимать кнопку ЗАВЕРШИТЬ ТЕСТ и данные передавались в основную прорамму. Под данными понимаю одну строковую переменную и 3-и целочисленных.
Ответить с цитированием
  #4  
Старый 02.02.2010, 00:44
Аватар для Ferra
Ferra Ferra вне форума
Местный
 
Регистрация: 12.03.2006
Адрес: Минск
Сообщения: 527
Репутация: 1336
По умолчанию

Также советовал бы воспользоваться поиском по форуму. Вроде и не один раз эта тема поднималась.
__________________
Нет повести печальнее на свете, чем повесть о заклиневшем Resete.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 00:00.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025