我创建了一个active dll,有如下代码,但是ObjectControl_Activate 却始终没有被执行,相反Class_Initialize这个初始化函数却被执行了。
MTSTransactionMode属性已设置为RequiresTransaction.
能不能帮忙看一下,非常感谢。Option Explicit
Implements ObjectControlDim context As ObjectContextPrivate str As StringPrivate Sub Class_Initialize()
    str = "bbbbbbbbbbbbbb"
    Set context = GetObjectContext()
End SubPrivate Sub ObjectControl_Activate()
    str = "aaaaaaaaaaaaaa"
    Set context = GetObjectContext()
End Sub
Public Function GetStr() As String
   GetStr = str
End Function
Private Function ObjectControl_CanBePooled() As BooleanEnd FunctionPrivate Sub ObjectControl_Deactivate()End Sub

解决方案 »

  1.   

    那就别在这个里面写代码了,写在sub main里面,启动设置sub main。
      

  2.   

    asp调用dll的GetStr方法,最后显示的结果是bbbbbbbbbbbbbb,
    如果我把
    Private Sub Class_Initialize()
        str = "bbbbbbbbbbbbbb"
        Set context = GetObjectContext()
    End Sub
    这个初始化函数去掉之后,显示的结果是空。
    为什么会这样?
    谁能帮帮我?救命啊!
      

  3.   

    我的机器环境是winxp专业版+vb6
      

  4.   

    Modest(塞北雪貂) ,谢谢。我们的项目里面都用的是ObjectControl_Activate,没用submain。我再追加功能时出现了现在的这个问题。