Как создать объект по его "ProgId"?

Язык Visual Basic на платформе .NET.

Модераторы: Ramzes, Sebas

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Как создать объект по его "ProgId"?

Сообщение Antonariy » 24.11.2009 (Вт) 14:52

В VB6 все было просто — CreateObject("Lib.Class") — а с .NET-классами как это делается?
Лучший способ понять что-то самому — объяснить это другому.

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Re: Как создать объект по его "ProgId"?

Сообщение Nord777 » 24.11.2009 (Вт) 15:07

Если из под .Net надо создать Com-обьект, то так же

Public Shared Function CreateObject(ByVal ProgId As String, Optional ByVal ServerName As String = "") As Object
Microsoft.VisualBasic.Interaction

MSDN писал(а):Sub CreateADODB()
Dim adoApp As Object
adoApp = CreateObject("ADODB.Connection")
End Sub
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Как создать объект по его "ProgId"?

Сообщение Antonariy » 24.11.2009 (Вт) 15:10

Нет, я спрашиваю про NET-классы.
Лучший способ понять что-то самому — объяснить это другому.

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Re: Как создать объект по его "ProgId"?

Сообщение Nord777 » 24.11.2009 (Вт) 15:12

Я не пойму, как ты хочешь их использовать? Где?
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Как создать объект по его "ProgId"?

Сообщение Antonariy » 24.11.2009 (Вт) 15:17

Что написать сюда вместо CreateObject:
dim x as System.Web.HttpRequest = CreateObject("System.Web.HttpRequest")

System.Web.HttpRequest — это для примера.
Лучший способ понять что-то самому — объяснить это другому.

Nord777
Гуру
Гуру
Аватара пользователя
 
Сообщения: 1144
Зарегистрирован: 22.02.2004 (Вс) 13:15
Откуда: Подольск

Re: Как создать объект по его "ProgId"?

Сообщение Nord777 » 24.11.2009 (Вт) 15:22

Если не ошибаюсь то так же.
Только при создании .Net-овской сборки надо указать опцию "Make Com-visible"
Microsoft Visual Studio 2008
Microsoft .NET Framework 3.5

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Как создать объект по его "ProgId"?

Сообщение Antonariy » 24.11.2009 (Вт) 15:31

Сборка нетовская, классы нетовские, никакого COMа. Есть только имя нетовского класса из этой сборки в виде строки, как создать объект имея только эту строку?
Если и теперь не понятно, лучше ничего не отвечай.
Последний раз редактировалось Antonariy 24.11.2009 (Вт) 16:46, всего редактировалось 1 раз.
Лучший способ понять что-то самому — объяснить это другому.

Joo
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 762
Зарегистрирован: 14.08.2008 (Чт) 11:55
Откуда: Казахстан

Re: Как создать объект по его "ProgId"?

Сообщение Joo » 24.11.2009 (Вт) 15:48

Antonariy писал(а):БЛЯ! :evil:
Сборка нетовская, классы нетовские, никакого COMа. Есть только имя нетовского класса из этой сборки в виде строки, как создать объект имея только эту строку?
Если и теперь не понятно, лучше ничего не отвечай.

Ну не фига себе ответил.
А нет бы сначала объяснить, что имеешь, что хочешь получить, а то сначала выдает порциями, а потом еще и матом. ппц.

А по теме, ИМХО, нужно копать в сторону Reflection.
"Им будет не просто, тем кто полагается на истину авторитета, вместо того чтобы полагаться на авторитет Истины"
Джеральд Месси, Египтолог

Antonariy
Повелитель Internet Explorer
Повелитель Internet Explorer
Аватара пользователя
 
Сообщения: 4824
Зарегистрирован: 28.04.2005 (Чт) 14:33
Откуда: Мимо проходил

Re: Как создать объект по его "ProgId"?

Сообщение Antonariy » 24.11.2009 (Вт) 16:44

Прошу прощения.

Правильный ответ как оказалось CreateInstance.
Лучший способ понять что-то самому — объяснить это другому.


Вернуться в Visual Basic .NET

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 91

    TopList