新建一个ACTIVE DLL,然后,把我写的函数从另外一个程序里原封不动的复制过来,最后点文件下的制作DLL。注意:你的函数必须复制到工程中新生成的类中(例如:clsTest),该类必须为公共类,可以输出,同时你的函数或要为PUBLIC,否则不能输出调用:
1、新建工程,然后工程-》引用-》选择你的(*.dll)文件,引用到工程中来
2、
dim dllTest as clsTest
set dllTest = New clsTest
call dllTest.yourSub

解决方案 »

  1.   

    VB的ActiveXDLL其实是COM,所以你只能用上面的办法做,而不是通过声明
      

  2.   

    将你制作的dll工程加到调用此dll的工程中调试一下,就可以知道哪里出错了。
      

  3.   


    我的这个DLL是写在CLASS里的,而且是没有返回值的,如下例:
    public sub Change_number( byref X as integer,Byval y as integer)
    ......
    ......
    ......
    end sub然后我存成CHANGE_NUMBER.dll就这样,请大家看看有什么问题?
      

  4.   

    我可以发一个文件给你,自己看看.六个EMAIL
      

  5.   

    dll 的调用:
    其实不管你要调用的是你自己写的DLL,还是别人写的DLL,首先你要分清楚它是 ActiveX DLL,还是标准的DLL,因为它们在调用时是有区别的。
    1、ActiveX DLL
    要调用ActiveX DLL你必须要注册这个DLL(如果是用VB写的,在编译时自动会注册。否则可用Regsvr32.exe来注册。windows安装目录\system(如是NT则是system32)\Regsvr32 DLL的完整路径)
    然后你可以在工程中引用该DLL。
    再然后你就可以使用其中的类了。比如:dim clsXXXX as XXXX(该DLL中的类名)
    2、标准DLL
    标准DLL的使用和平时使用Windows API时是一样的。
    你要使用该DLL中输出的函数,就必须在中对该函数进行声明。
    比如:Public Declare Function DLL中的函数名 Lib 你的DLL的完整路径 Alias 函数别名(在此要区分大小写) (参数列表) As 返回类型
      

  6.   

    请发一个例子到我的信箱,谢谢![email protected]
      

  7.   

    注意:用VB制作的DLL均为ACTIVEXDLL,其均要注册并在工程中引用后才可使用其提供的函数与方法,另注意在编辑时要考虑兼容性问题,本人建议选二进制兼容;这样在升级时只要接口不变则不要重编引用它的应用程序。
      

  8.   

    有好的资料顺便给俺一个吧,我也没做过DLL
    QQ:115020436
    MSN:[email protected]
      

  9.   

    我基本弄明白了DLL、类、用户控件,呵呵,感觉不错。有空多交流。
      

  10.   

    1.引用该Dll
    2.生成该Dll的一个实例
    3.调用该实例的方法或函数!或读写该实例的属性!
    4.OK???
      

  11.   

    你找一下msdn,里面有step by step的详细帮助
      

  12.   

    同意gxhwq(blueboy)意见,但你还要注意:在类中只能用err.raise,不可原版copy,我做的都成功调用过,本地自动注册,在其它机器上用,注册是要做的!
      

  13.   

    怎么注册?大家能发一个自己做的DLL的源代码给我看看么?是不是DLL里必须要有类?没有类可以么?直接PUBLIC SUB。。END SUB这样可以么?我很想知道。谢谢了!还有ERR。RAISE是什么意思?
      

  14.   

    注册方法:在“引用”里添加此DLL即可。