情况描述:UserControlProject.ocx中包含UserControl.ctl和Form1.frm在Form1.frm里面调用UserControl.ctl的事件然后执行容器(在容器里面有UserControlProject.ocx的例子)里面的代码。调用的时候传递参数str是string类型,i是Integer类型系统缺省的byref和byval都试过。点过几次后出现如下错误。
Run-time Error '-2147417848(80010108)':
敬请高手指点!!!
微软的帮助我都看了,诸如传递了DataProject了,公共声明导致应用错误等等,对了,我的环境是MVS6.0补丁是MicrosoftVisualStudio Service Pack 5。

解决方案 »

  1.   

    请高手插手解决,谢谢,多找几个微软的Bug也可以阿
      

  2.   

    '控件内部代码
    Public Event EventSetInfo(str As String, serial As Integer)
    Public Sub CauseEventSetInfo(c_str As String, c_serial As Integer)
        RaiseEvent EventSetInfo(c_str, c_serial)  '驱动事件执行容器的代码
        Select Case c_serial
        Case 0  '设置卡
            CardSetOK = False    '判断是否设置成功的标志,成功时候容器返回True,只在18秒内判断,到时不返回视为超时
            TimerCard.Enabled = True  '启动定时器
            TimerCard.Interval = 180  '100ms' delay
            frmProcess.Show vbModal   '显示进度条
     End Select'Form1内部代码Private Sub CommandReset_Click(index As Integer) 'Index和一排按钮有关
    Dim i As Integer
    Dim j As Integer
    Con_str_reset = Chr(Index + 64) + Chr(CheckUse(Index).value + 48) + "1" + Chr(Check100(Index).value + 48) + Chr(CheckDuplex(Index).value + 48) + Chr(CheckSwitch(Index).value + 48)
    frmProcess.LabelNotice.Caption = "设置数据写入或复位操作进行中..." '进度条提示
    Call CtrlForm1.ConfigReset(str, i)    'CtrlForm1在控件里面调用Form1的时候曾经执行:Set Form1.CtrlForm1 = me
    End Sub
      

  3.   

    ConfigReset应该:EventSetInfo
    Thanks,