理论上只要是"二进制兼容"编译的,的就应一样!
但是"事实"并非如此!!!!
切记 ActiveX DLL 要与调用他的 "主程序" 在同一 Windows 下编译!
编译好的 ActiveX DLL 与 "主程序" 可以安装在任何 Windows 下!
 

解决方案 »

  1.   

    在涉及字符的地方必须用UNICODE
      

  2.   

    哎呀,是VB。Sorry,不一定了。
      

  3.   

    谢谢!我用vb自身带的打包功能,打了个包,在SETUP。LST中,有DLL等是否自注册的信息,我想问的是:她根据什么,判断自注册以及SETUP时又是怎样注册的,(有调用到REGSVR32吗?)!谢谢!!!
      

  4.   

    没调用 regsvr32 !!
    用的是以下 2 个 API:(摘自 .VB98\Wizards\PDWizard\Setup1\Setup1.vbp)
    Public Declare Function DLLSelfRegister Lib "vb6stkit.dll" (ByVal lpDllName As String) As Integer
    Public Declare Function RegisterTLB Lib "vb6stkit.dll" (ByVal lpTLBName As String) As Integer
      

  5.   

    谢谢了,想请教有关dll方面的问题,就是,dll的注册过程到底是怎么样的,以及结果又有什么表现,仅仅是写进注册表吗?如果我有一同名dll也想注册,结果又怎样?是根据什么判断版本的(除了日期外),什么是坏的dll?当安装一文件是提示:Unable to load ‘c:\program files\common files\system\ole db\msdasql.dll’
    31:与系统连接的设备不能正常运转
    首先:此dll肯定存在,
    不知是什么原因,
    谢谢!