Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Динамическое подключение контрола

518
14 июля 2006 года
Andreika
101 / / 14.02.2003
Подскажите кто нибудь, как можно динамически подключить к программе какой либо контрол, зная лишь его строковый идентификатор.

Может кто знает, в 1С Предприятии пишем
СоздатьОбъект("Word.Application") и получаем Ворд в виде СОМ объекта.
Таким же образом можно заюзать любой АктивХ зарегистрированный в системе.

Вопрос, как в VB с помощью переданной строки вида "Word.Application" (или ID любого другого контрола) заюзать этот контрол?
725
14 июля 2006 года
UnErase
190 / / 08.06.2006
А CreateObject не подходит?
725
14 июля 2006 года
UnErase
190 / / 08.06.2006
Мне кажется это то, что тебе нужно:

Public Function CreateObject(ByVal ProgId As String[, Optional ByVal ServerName As String = ""]) As Object
Member of: Microsoft.VisualBasic.Interaction
Summary:
Creates and returns a reference to a COM object. CreateObject cannot be used to create instances of classes in Visual Basic unless those classes are explicitly exposed as COM components.

Parameters:
ServerName: Optional. String. The name of the network server where the object will be created. If ServerName is an empty string (""), the local computer is used.
ProgId: Required. String. The program ID of the object to create.

Return Values:
Creates and returns a reference to a COM object. CreateObject cannot be used to create instances of classes in Visual Basic unless those classes are explicitly exposed as COM components.
725
14 июля 2006 года
UnErase
190 / / 08.06.2006
Короче она возвращает объект (COM).
В первом параметре указывается ID COM объекта (как я понимаю)
А во втором параметре имя сервера где он будет создан, и если второй параметр является пустой строкой, то будет объект будет создан на локальной машине.

Вот в принципе и все!
Пользуйся. :)
725
14 июля 2006 года
UnErase
190 / / 08.06.2006
Примерно так:

 
Код:
Public wApp As Object
wApp = CreateObject("Word.Application", "")


По крайней мере у меня получилось, в процессах появился WINWORD.EXE
518
17 июля 2006 года
Andreika
101 / / 14.02.2003
Спасибо огромное.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог