MsgBox "start winsock"
    Set wscControl = New MSWinsockLib.Winsock
    Set wscData = New MSWinsockLib.Winsock
    MsgBox "end winsock"我程序编译成exe在别的机子上运行,winsock.ocx我已经注册过了,但是程序执行到第一个msgbox就弹出
不能建立activex 的提示,程序就over了愁死我了
那位大哥大姐救命啊!!!!!!

解决方案 »

  1.   

    提示的不一定就是这个控件没有注册,vb做的程序要打包才可以才没有vb环境的电脑上使用的。
      

  2.   

    应该是winsock.ocx没有打包到程序里。
      

  3.   

    打包了,用install shield,安装完,重起机子了,还是不行我又试了一下例子就这么简单,居然还是运行不了(mswinsck.ocx已经注册过了,vb运行时环境也已经安装了)Option ExplicitPrivate WithEvents sFtp As WinsockPrivate Sub Form_Load()
        Set sFtp = New Winsock
        MsgBox sFtp.state & " is sock state"
        sFtp.Connect ("localhost")
    End Sub就只有一个窗体,以及这些语句,在
        Set sFtp = New Winsock
    时出错,不能创建activex 组件,实在是没招了
      

  4.   

    哎,这个问题,如此简单不要在工程中从部件中加载OCX。而是在工程的引用中选择winsock.ocx!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!