vb.net 封装组件成com的方法

转载 2007年10月07日 19:34:00
 方法如下:

  新建一个 项目 ,选择 Visual Basic / Window / 类库 ,假设项目名为ClassLibrary1

  然后 在 solution manager(解决方案资源管理器)中, 将 新创建的 Class1.vb 文件删除。

  然后 在  solution manager(解决方案资源管理器)中 的项目上点击右键 ,在弹出的菜单上 点击 添加 / 类 ,在弹出的对话框中选择 com类 ,修改类的名称(本例中修改为ComC.vb),后点击 添加 按钮。

则会看到ComC.vb的代码如下:

<ComClass(ComC.ClassId, ComC.InterfaceId, ComC.EventsId)> _
Public Class ComC

COM GUID

    
' 可创建的 COM 类必须具有一个不带参数的 Public Sub New() 
    ' 否则, 将不会在 
    ' COM 注册表中注册此类,且无法通过
    ' CreateObject 创建此类。
    Public Sub New()
        
MyBase.New()
    
End Sub


End Class

现在只要在这个类中添加 public 的成员即可 ,假如我们添加一个 方法 Northsnow

 

<ComClass(ComC.ClassId, ComC.InterfaceId, ComC.EventsId)> _
Public Class ComC

COM GUID

    
' 可创建的 COM 类必须具有一个不带参数的 Public Sub New() 
    ' 否则, 将不会在 
    ' COM 注册表中注册此类,且无法通过
    ' CreateObject 创建此类。
    Public Sub New()
        
MyBase.New()
    
End Sub

    
Public Sub Northsnow(ByVal ss As String)

        
MsgBox(ss)
    
End Sub
    Public Function T(ByVal t1 As Int16, ByVal t2 As Int16) As Integer
        Dim q As Integer
        q = t1 * t2
        Return q
    End Function


End Class

然后就可以编译,编译后,在Delphi7 中添加如下的代码来调用这个com

{$R *.dfm}
  uses   ComObj ;
procedure TForm1.Button1Click(Sender: TObject);
var
  A_Com:Variant;
begin
A_Com := CreateOleObject('ClassLibrary1.ComC');
//A_Com.Northsnow('abcdefg');
edit1.Text:=inttostr(A_Com.T(10,5));   //Eedit1.text返回值为50
end;

运行这个程序就会看到效果。

相关文章推荐

vb.net封装组件成com的方法

vb.net封装组件成com的方法    前几天一直在研究如何将.net的组件封装成com供非托管代码调用。上网查资料,查书,试验,最后测试了vb.net,c#,vc++.net 等多种语言,都没...

VB.NET自定义组件方法及注意事项

Imports System.ComponentModelImports System.IOImports System.Windows.FormsImports YeWuBillPublic Cla...

vb.net环境下将DataTable转成泛型集合方法

做机房收费系统的时候,遇到这样一个问题,将数据库表中的数据取出一行,将每个单元格中的内容填充到窗体 的文本框中。考虑到用DataReader获取结果的复杂性,我就用了泛型集合。可是这么一用却出现了如...

COM与.NET交互简单示例--追忆VB6

导读:本文以VB6为例,主要介绍.NET引用COM和COM引用.NET的两个简单示例。

VC++调用VB.NET缩写的COM

现在COM组件的使用越来越广泛,在各个程序中调用COM组件我想大家都遇到过,这篇文章就是关于COM组件的编写和调用的,主要包含了使用VC6.0编写和调用COM组件,VS2005中使用VB编写和调用CO...

C#与vb6 com组件的互相调用方法

COM(Component Object Model,组件对象模型),是一种说明如何建立可动态互变组件的规范,此规范提供了为保证能够互操作,客户和组件应遵循的一些二进制和网络标准。通过这种标准将可以在...
  • hrex
  • hrex
  • 2011-11-04 17:08
  • 1917

vb.net 教程 11-1 打印组件 2 PrintDialog 1

上一节将PrintDocument、PageSetupDialog、PrintDialog、PrintPreviewDialog的重要属性/方法进行了个罗列。 本节开始正式学习这些组件的使用。 P...

vb.net 教程 11-1 打印组件 2 PrintDialog 2

上一节介绍了PrintDialog的一些基础,这节继续介绍。 先说一下DefaultPageSettings,这个是默认的页面设置 其实个人感觉PrintDialog.DefaultPageSetti...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)