Страница: 1 |
Страница: 1 |
Вопрос: Как создать простейший COM-обьект на VB.NET ???
Добавлено: 27.08.05 13:49
Автор вопроса: Начинающий_
Попробовал вот так - не получается - гду ошибка - не пойму...
Imports System.Runtime.InteropServices
<InterfaceType(ComInterfaceType.InterfaceIsDual)> _
Public Interface IAdvancedMath_VB
Function Multiple(ByVal x As Integer, ByVal y As Integer) As Integer
Function Divide(ByVal x As Integer, ByVal y As Integer) As Integer
End Interface
Public Class CSharpCalc_VB
Implements IAdvancedMath_VB
Function Multiple(ByVal x As Integer, ByVal y As Integer) As Integer _
Implements IAdvancedMath_VB.Multiple
Return (x * y)
End Function
Function Divide(ByVal x As Integer, ByVal y As Integer) As Integer _
Implements IAdvancedMath_VB.Divide
Return (x / y)
End Function
Public Sub New()
MyBase.New()
End Sub
End Class
Попробовал шаблоном - тоже не пойму где перечислять интерфейсы и конкретно уже методы..
<ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)> _
Public Class ComClass1
#Region "COM GUIDs"
' These GUIDs provide the COM identity for this class
' and its COM interfaces. If you change them, existing
' clients will no longer be able to access the class.
Public Const ClassId As String = "624A9A58-712B-4F95-AB28-615C8485161F"
Public Const InterfaceId As String = "89CF39BE-CB7E-48B6-822E-DE77741548E3"
Public Const EventsId As String = "4D3B10A6-9291-4B3E-BB5F-A52F7D6F6BAD"
#End Region
' A creatable COM class must have a Public Sub New()
' with no parameters, otherwise, the class will not be
' registered in the COM registry and cannot be created
' via CreateObject.
Public Sub New()
MyBase.New()
End Sub
End Class
про регистрацию COM-обьекта (RefAsm-ом, TlbExp-ом или галками на свойствах проекта) - знаю все...
Не понимаю именно текста Бейсика... Помогите плиз, кто знает...
Ответы
Всего ответов: 3
Номер ответа: 1
Автор ответа:
Black Dragon
ICQ: 321186096
Вопросов: 30
Ответов: 347
Web-сайт:
Профиль | | #1
Добавлено: 28.08.05 12:36
2 Начинающий, понимаешь, хоть домен сайта и зовется VBNet, здесь вопросы непосредственно по VB .NET задавать, в общем, бесполезно, почти никто не хочет переходить на него, народ на шестерке...
Номер ответа: 2
Автор ответа:
Mirgor
Вопросов: 10
Ответов: 19
Web-сайт:
Профиль | | #2
Добавлено: 29.08.05 14:37
ДА, я тоже промучился. Ничего не вышло. Потому, кстати, и остался на VB6. Грустно все это.
Номер ответа: 3
Автор ответа:
vito
Разработчик Offline Client
Вопросов: 23
Ответов: 879
Web-сайт:
Профиль | | #3
Добавлено: 29.08.05 17:40
Гм... ну как сказать. Идеология Net и управляемого кода - это уход от COM. Вызвать можно и даже COM может вызвать NET приложение. Это оставлено для совместимости - COM пока не отменяют.
Но создавать их нельзя - новая технология и кстати очень неплохя. ИМХО)