Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.03.2012, 15:25   #1
SiDimka
 
Регистрация: 28.03.2012
Сообщений: 5
По умолчанию как передать объект из динамически загружеамой dll

как передать ToolBar из динамически загружеамой dll в Delphi?

Всем спасибо кто ответил!
SiDimka вне форума Ответить с цитированием
Старый 28.03.2012, 16:23   #2
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Да никак! Нужно создать interface в dll и создать функцию которая будет возрощать экземпляр интерфейса! Если сильно нужно могу выложить исходники
RuVarez вне форума Ответить с цитированием
Старый 28.03.2012, 16:28   #3
SiDimka
 
Регистрация: 28.03.2012
Сообщений: 5
По умолчанию

Буду очень признателен.
SiDimka вне форума Ответить с цитированием
Старый 28.03.2012, 16:30   #4
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

сейчас накидаю...
RuVarez вне форума Ответить с цитированием
Старый 28.03.2012, 16:52   #5
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

а тебе именно динамически? статически уже накидал а вот динамически...
RuVarez вне форума Ответить с цитированием
Старый 28.03.2012, 17:05   #6
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

Код:
library Project1;

{ Important note about DLL memory management: ShareMem must be the
  first unit in your library's USES clause AND your project's (select
  Project-View Source) USES clause if your DLL exports any procedures or
  functions that pass strings as parameters or function results. This
  applies to all strings passed to and from your DLL--even those that
  are nested in records and classes. ShareMem is the interface unit to
  the BORLNDMM.DLL shared memory manager, which must be deployed along
  with your DLL. To avoid using BORLNDMM.DLL, pass string information
  using PChar or ShortString parameters. }

uses
  SysUtils,
  Classes,ComCtrls,Forms,Controls;

{$R *.res}

function GetToolBar(aParent : TWinControl) : TToolBar; stdcall;
begin
  Result := TToolBar.Create(aParent);
end;

exports
  GetToolBar name 'GetToolBar';
begin
end.
Примерно такой код dll
Потом в приложении ты говориш так:
Код:
var MyToolBar : TToolBar;
begin
  MyToolBar := GetToolBar(self);
  MyToolBar.ParentWindow := self.handle;
end;
RuVarez вне форума Ответить с цитированием
Старый 28.03.2012, 17:37   #7
SiDimka
 
Регистрация: 28.03.2012
Сообщений: 5
По умолчанию

а если toolbar создать в dll, а передать в coolrar myform?
SiDimka вне форума Ответить с цитированием
Старый 28.03.2012, 20:13   #8
RuVarez
Форумчанин
 
Аватар для RuVarez
 
Регистрация: 25.08.2010
Сообщений: 258
По умолчанию

чо? какой collrar myform?
RuVarez вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

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

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в Си# передать в функцию объект по значению? vedro-compota Общие вопросы .NET 7 17.01.2011 19:02
onkeydown. Как правильно передать в обработчику объект? Stilet JavaScript, Ajax 2 24.11.2010 13:15
Как передать объект в функцию? BadProgrammer Общие вопросы C/C++ 4 06.11.2010 11:39
использовать DLL как COM-объект computerman Помощь студентам 4 08.07.2009 13:23
Как передать объект по наследству Legat Win Api 6 03.11.2007 11:19