我的意思是,在W2000SERVER的组件服务中,每个组件的属性中,有个激活选项卡,其中有一项是“启用对象结构”和“建立者字符串”,这个问题我已解决(通宵),
一个是在创建Com+程序是选择“库应用程序”,然后把做好的组件添加到里面,在在上面的属性中填入想要填的字符串,这样就可以了。
Implements COMSVCSLib.IObjectConstruct
Private MyConnectionString As String
Sub IObjectConstruct_Construct(ByVal pCtorObj)
Dim cs As IObjectConstructString
Set cs = pCtorObj
MyConnectionString = cs.ConstructString
End Sub
详细请看.NET的帮助,查询IObjectconstruct的结果中有性系解释。
楼主没说清楚吧,是不是这个意思,我做的COM+组件的连接池及连接字符串的设置如下:
'********************************************************************************
'* 功能 描述:从共享属性中读取连接字串
'* 参数 说明:
'* 输入:FilePath
'* 输出:None
'* 返回值说明:String
'* 作 者:ajiu
'* 更 新:
'* 创建 日期:2003/6/4
'* 更新 日期:
'********************************************************************************
Private Function GetConnectString(ByVal FilePath As String) As String
Dim uSharedP As SharedProperty '共享属性对象
Dim uSharedPG As SharedPropertyGroup '属性组对象
Dim uSharedPGM As SharedPropertyGroupManager '组管理对象
Dim bFlag As Boolean '
On Error GoTo ErrorHandler
Set uSharedPGM = New SharedPropertyGroupManager
Set uSharedPG = uSharedPGM.CreatePropertyGroup("DBConnect", LockSetGet, Standard, bFlag)
Set uSharedP = uSharedPG.CreateProperty("ConnectString", bFlag)
If bFlag = False Then '增加数据库连接池
uSharedP.Value = GetConnectStringFromConfigFile(FilePath) & ";OLE DB Services=-1;"
End If
GetConnectString = uSharedP.Value
GoTo ExitHandler
ErrorHandler:
Err.Raise Err.Number, Err.Source, Err.Description
ExitHandler:
Set uSharedPGM = Nothing
End Function