试试改改声明,把integer改为long试试

解决方案 »

  1.   

    放dll到exe文件目录
    编译成EXE文件以后,执行EXE测试
      

  2.   

    我也遇到过这种问题,注册和引用dll都不行,也搞不懂
      

  3.   

    private Declare  Function  XXX  Lib  "XX.dll"  ()  As  Integerpublic Declare  Function  XXX  Lib  "XX.dll"  ()  As  Integer
      

  4.   

    并且在引用此函数之前执行以下语句
    example:sub test()
      chdir app.path
      a=xxx
    end sub
      

  5.   

    定义函数时Lib后面跟上绝对路径试一试。
    或者使DLL文件未被注册。可以试一试:regsvr32 youdll.dll
    然后在VB中进行引用部件
    菜单Project->Peference->加入你注册的部件
    然后作为对象进行使用即可
      

  6.   

    我帮你看看。[email protected]
      我认为的解决方法是:
      声明:Declare Function XXX Lib "c:\system\XX.dll"()As long
      并将XX.dll放到"c:\system\"
      调用:
          dim a as long
          a = xxx
          pring a
      看看
      

  7.   

    我也遇到同样的问题,只是我的dll文件中函数不调用其他dll时,没有错误,一旦调用就出现如上的问题,请问该如何是好
      

  8.   

    Declare  Function  XXX  Lib  "XX.dll"  ()  As  Integer  
    先用搜索功能找到XX.dll记下它的绝对路径
    再在XX.dll前加上绝对路径试试吧
      

  9.   

    我是这么做的
    例如:
    VB调用testdll.dll 
    如果testdll.dll没有调用其他dll,怎么用都是对的
    如果testdll.dll中调用第三方的dll,假设testdll2.dll,
    用Declare  Function  XXX  Lib  "testdll.dll"  ()  As  Integer  
    就说找不到,加上绝对路径也不可以,把testdll2.dll和testdll.dll放在一起也不行
      

  10.   

    lzh_lee(阿飞):说明上是“XXX函数返回一状态码,0表示成功,非0 表示错误”,我想应该没错。改成long我也试了,仍然找不到此文件。
        注册、绝对路径和相对路径、private和public我都试过的。