![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Использование невизуальных компонент в приложении без формы [D5, D6, Win95/98, WinME, NT4, Win2k, WinXP]
VS2001 © (2002-08-05 06:24:00)У меня такая проблема:
подключил невизуальный компонент (VCLZip) в модуле DLL. Теперь могу воспользоваться его свойствами.
Вопрос: а как мне использовать события (Events) этого компонента.
ZZ_ZZ (2002-08-08 10:09:00) [1]>ЮЮ
Пробовал экспортировать Pack (как обычно экспортируются библиотеки) - тоже самое - ОШИБКА!
Если можешь помочь, напиши пример.
ЮЮ (2002-08-08 07:51:00) [2]Хоть я и никогда DLL не занимался, но ,как мне кажется, импортировать ты должен не MyDLLZip.Pack а некую
Pack(здесь куча параметров), внутри которой ты и создашь свой MyDLLZip. Или же импортировать фукцию, возвращающую MyDLLZip, и работать уже с его методами.
ZZ_ZZ (2002-08-08 07:32:00) [3]>ЮЮ
прописал процедуру Pack, сделал там все что мне нужно.
Все хорошо, но вот теперь как экспортировать функции типа :
MyDLLZip.Pack
exports Pack или MyDLLZip ошибочный
ЮЮ (2002-08-06 08:26:00) [4]В полном соответствии с 1 и 2-м ответами:
type
TMyDLLZip = class(TVCLZip)
procedure myTotalPercentDone(Sender: TObject; Percent: Integer);
public
constructor Create( AOwner: TComponent ); override;
end;
constructor TMyDLLZip.Create(AOwner: TComponent);
begin
inherited;
self.OnTotalPercentDone:=MyTotalPercentDone;
end;
procedure TMyDLLZip.myTotalPercentDone(Sender: TObject; Percent: Integer);
begin
....
end;
VS2001 (2002-08-06 06:03:00) [5]Что-то не получается.
Мне нужно вообще без формы (т.е.чисто DLL), а в указанной статье (и примере) с использованием формы.
MBo (2002-08-05 11:39:00) [6]я уже сказал, как. Подробности в ссылке, данной Ю.З.
VS2001 (2002-08-05 11:32:00) [7]>MBo
у компонентна это есть, но как им воспользоваться?
Юрий Зотов (2002-08-05 09:40:00) [8]Если проблема в том, что нет формы, то см. мой первый постинг и здесь:
http://www.delphikingdom.com/helloworld/runtime_comp.htm
Если в чем-то другом, то в чем именно?
MBo (2002-08-05 09:22:00) [9]>забацать
Что это значит?
У компонента уже есть это событие или нет?
VS2001 (2002-08-05 09:19:00) [10]А как вот такое забацать - VCLZip1.OnTotalPercentDone
VCLZip1.OnUnZipComplete
А то что-то не получается :-(
Юрий Зотов (2002-08-05 08:42:00) [11]B том жк модуле, где этот комопонент используется (или прямо в DPR) напишите класс-потомок этого компонента и введите а него обработчик нужного события. Соответственно, создавайте его, а не оригинал. И пусть сам свое же событие обрабатывает.
MBo (2002-08-05 07:39:00) [12]VCLZip1.OnSomething:=SomeHandlerWithProperParameters;