Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: дайте плиз пример com dll на vb.net Добавлено: 11.02.09 13:44  

Автор вопроса:  Денис
Привет всем.

Делаю все по мануалу. Пошаговое руководство. Создание объектов COM с помощью Visual Basic
<br/>
http://msdn.microsoft.com/ru-ru/library/x66s8zcd.aspx
<br/>
а дальше пишу обычные процедуры
<br/>
после чего пытаюсь подключить в delphi все подключается
вижу набор процедур но конструктора класса не вижу.
<br/>
У кого нибудь есть пример рабочей com dll на vb.net?

Ответить

  Ответы Всего ответов: 5  

Номер ответа: 1
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #1 Добавлено: 11.02.09 15:57
нечто вроде "COM VISIBLE" в опциях модуля смотрел?

Ответить

Номер ответа: 2
Автор ответа:
 Денис



Вопросов: 2
Ответов: 3
 Профиль | | #2 Добавлено: 12.02.09 09:20
Нет не смотрел. А можно по подробнее что это за параметр?

Ответить

Номер ответа: 3
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #3 Добавлено: 12.02.09 14:17
Параметр, определяющий видимость COM снаружи, судя по описанию ^^

Ответить

Номер ответа: 4
Автор ответа:
 Денис



Вопросов: 2
Ответов: 3
 Профиль | | #4 Добавлено: 12.02.09 14:44
  1. Imports System.Runtime.InteropServices
  2.  
  3. '<Assembly: ComVisibleAttribute(True)>
  4. <ComClass(ComSimple1.ClassId, ComSimple1.InterfaceId, ComSimple1.EventsId)> _
  5. Public Class ComSimple1
  6.  
  7. #Region "COM GUIDs"
  8.     ' These  GUIDs provide the COM identity for this class
  9.     ' and its COM interfaces. If you change them, existing
  10.     ' clients will no longer be able to access the class.
  11.     Public Const ClassId As String = "32250cb2-b9cb-4ef4-84c7-2418494cc190"
  12.     Public Const InterfaceId As String = "bef1f49f-fc6c-400a-b0fb-c7be069eccb5"
  13.     Public Const EventsId As String = "284dc345-96fd-40c4-8b8e-abafd5e5fc4d"
  14. #End Region
  15.  
  16.     Public Sub New()
  17.         MyBase.New()
  18.     End Sub
  19.  
  20.     Public Interface IComSimple
  21.  
  22.         Function Mul(ByVal x As Integer, ByVal y As Integer) As Integer
  23.         ReadOnly Property About() As String
  24.  
  25.     End Interface
  26.  
  27.     Public mstrLastName As String
  28.  
  29.     Public Function Mul(ByVal x As Integer, ByVal y As Integer) As Integer
  30.         Mul = x * y
  31.     End Function
  32.  
  33.     Public Property LastName() As String
  34.         Get
  35.             LastName = mstrLastName
  36.         End Get
  37.         Set(ByVal Value As String)
  38.             mstrLastName = Value
  39.         End Set
  40.     End Property
  41.  
  42.  
  43.  
  44. End Class


что не так помогите пожалуйста? видимо что-то с интерфейсом
на ComVisibleAttribute студия добавила Imports System.Runtime.InteropServices

Ответить

Номер ответа: 5
Автор ответа:
 Денис



Вопросов: 2
Ответов: 3
 Профиль | | #5 Добавлено: 12.02.09 15:01
  1. Imports System
  2. Imports System.Runtime.InteropServices
  3.  
  4. <Assembly: ComVisibleAttribute(False)>
  5. Namespace InteroperabilityLibrary
  6.  
  7.    <ComVisibleAttribute(False)> _
  8.    Public Class BaseClass
  9.  
  10.       Sub SomeSub(valueOne As Integer)
  11.       End Sub
  12.  
  13.    End Class
  14.  
  15.    ' This class violates the rule.
  16.    <ComVisibleAttribute(True)> _
  17.    Public Class DerivedClass
  18.       Inherits BaseClass
  19.  
  20.       Sub AnotherSub(valueOne As Integer, valueTwo As Integer)
  21.       End Sub
  22.  
  23.    End Class
  24.  
  25. End Namespace


Плюс нерабочий код из msdn в 3 строке если убрать все компилируется. Но когда подключаешь com объект в проэкт то кроме списка классов и интерфейсов ничего не видно. А с нормальной com можно работать через интерфейс.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам