举个例子 新建ACTIVE DLL工程,工程名COM_Test,类名clsAdd,类中粘贴代码: Option Explicit Public x, y As Integer Public Function myAdd() As Integer myAdd = x + y End Function 编译得到COM_Test.dll,下面开始注册组件 开始-设置-控制面板-组件服务,找到COM+应用程序,右键新建 应用程序,创建一个空应用程序,就叫myadd吧,然后右键新建组建,导入刚才生成的COM_Test.dll,成功以后点击myadd应用程序,将其导出,注意类型选代理,就会生成myadd.msi和myadd.msi.cab两个文件Option Explicit Dim myAdd As New clsAddPrivate Sub Command1_Click()With myAdd .x = Val(Text1.Text) .y = Val(Text2.Text) Text3.Text = .myAdd End WithEnd SubPrivate Sub Command2_Click() Set myAdd = Nothing End End SubPrivate Sub Form_Load() Set myAdd = New clsAdd End Sub 然后编译生成COM_CLIENT.EXE,将这个文件和刚才导出的两个文件复制到客户机上(WIN2000), 在客户机上安装myadd.msi,再运行COM_CLIENT.EXE试试! 注意在客户机登录的用户要有安装和访问服务器组件的权限!我的那个例子就是类似的
既然是三层结构,目的就是减少服务器的负担,而你却尽量要在服
务器做这些??一般客户端的DLL放的都是些逻辑运算层,而连接数据
库进行交互的时候才去联系服务器上的DLL,这样能尽可能的利用客户
机的资源。
新建ACTIVE DLL工程,工程名COM_Test,类名clsAdd,类中粘贴代码:
Option Explicit
Public x, y As Integer
Public Function myAdd() As Integer
myAdd = x + y
End Function
编译得到COM_Test.dll,下面开始注册组件
开始-设置-控制面板-组件服务,找到COM+应用程序,右键新建 应用程序,创建一个空应用程序,就叫myadd吧,然后右键新建组建,导入刚才生成的COM_Test.dll,成功以后点击myadd应用程序,将其导出,注意类型选代理,就会生成myadd.msi和myadd.msi.cab两个文件Option Explicit
Dim myAdd As New clsAddPrivate Sub Command1_Click()With myAdd
.x = Val(Text1.Text)
.y = Val(Text2.Text)
Text3.Text = .myAdd
End WithEnd SubPrivate Sub Command2_Click()
Set myAdd = Nothing
End
End SubPrivate Sub Form_Load()
Set myAdd = New clsAdd
End Sub
然后编译生成COM_CLIENT.EXE,将这个文件和刚才导出的两个文件复制到客户机上(WIN2000),
在客户机上安装myadd.msi,再运行COM_CLIENT.EXE试试!
注意在客户机登录的用户要有安装和访问服务器组件的权限!我的那个例子就是类似的