Динамическая регистрация разных компонентов с одинаковым ...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Динамическая регистрация разных компонентов с одинаковым ...

Сообщение xenomorph » 23.06.2005 (Чт) 11:07

Динамическая регистрация разных компонентов с одинаковым интерфейсом.

Привет всем!

Проблема:

Хочу написать систему плагинов:
Главное приложение <> ActiveX Dll

Проблема вот в чём - "Главное приложение" должно
подключать эту длл и загружать некий общий класс,
его интерфейс известен. Например:

Public Sub Main(Input As String) As String
... (какой -то код)
End Sub

Путь к этой длл известен, и он меняеться.

Имеються 5 длл с таким вот интерфейсом ...
каждая что-то делает.

Необходимо зарегистрировать эту длл и ... ?

Вообщем интерфейс одинаков для всех длл.
Код внутри - разный. Главное приложение должно
содержать процедуру инициализации длл, и запуска
оюектов внутри.

Как её сделать?
--

У меня есть код для регистрации компонента:

=================================================
Public Function RegCOM(s_FileName As String, _
Optional bRegister As Boolean) As Boolean

If bRegister Then
Call mod_ShellWait.ExecCmd("regsvr32 /s" & s_FileName)
Else
Call mod_ShellWait.ExecCmd("regsvr32 /s /u " & s_FileName)
End If

End Function
=================================================

Он то компоненет регистрирует ... но вот дальше ...

Код программы:
=================================================
Private Sub Command1_Click()

Call mod_CR.RegCOM("TestDLL.dll", True)

'Invoking
Dim X As Object
Set X = CreateObject("TestClass", App.Path & "\TestDLL.dll") 'Тут я чё-то не так делаю???

Call X.Test 'Active X Component cannot Create the Object ..." !!!!!!!!!!!!!!!!!!!!!!! AAAAAA!!!

End Sub
=================================================

Проблема в том что нельзя установить References к
этой библиотеке ... точнее его нужно установить динамически.

Хух ... как мог так и объяснил - просьба ногами не пинать.
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 23.06.2005 (Чт) 12:43

Set X = CreateObject("TestClass.TestDll")

Кстати, как это Public Sub Main(Input As String) As String ???
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог

xenomorph
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 508
Зарегистрирован: 18.04.2004 (Вс) 11:41
Откуда: это не важно - на сегодня у меня есть алиби ...

Re

Сообщение xenomorph » 23.06.2005 (Чт) 14:47

2 ANDLL:

ПАсибА!
Работает!

--
Яа, яа дас ист Функцион, НИХТ Процедур 8-))))!
Ихь бин быстро набирать! 8)
... Dpkjvfnm dc`xnj itdtkbnmcz, f tckb yt itdtkbnmcz hfcitdtkbnm b dpkjvfnm !!! ...

ANDLL
Великий гастроном
Великий гастроном
Аватара пользователя
 
Сообщения: 3450
Зарегистрирован: 29.06.2003 (Вс) 18:55

Сообщение ANDLL » 23.06.2005 (Чт) 16:05

Кстати, маленькая рекомендация. В своем посте ты говоришь, что классы должны реализовывать один интерфейс... Про оператор Implements слышал?
Гастрономия - наука о пище, о ее приготовлении, употреблении, переварении и испражнении.
Блог


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: AhrefsBot и гости: 164

    TopList