我已声明了DLL
并把DLL放在系统目录下,程序的当前目录下也有DLL
现在我在调用DLL的时候报DLL文件未找到!

解决方案 »

  1.   

    贴出来
    '声明
    Public Declare Sub ShowDoctorModuleForm Lib "testdll.dll" (ByVal hwnd As Long, ByVal Sstr As String)
    '调用
    Call ShowDoctorModuleForm(1, "abc")
      

  2.   

    可能是这个DLL要调用其它DLL,而那个DLL找不到~
      

  3.   

    不是参数的问题啊.
    (写了一个没有参数的DLL,调用时也是这个样子)
      

  4.   

    dll放在哪裡都可以,但你要注冊regsvr32 d:\123\123.dll
      

  5.   

    这是标准的DLL不用regsvr32
    regsvr32 d:\testdll.dll 报错
    (如LoadLibrary("d:\testdll.dll") failed - 找不到指定的模块。)如果是VB写的ActiveX DLL 是需要用regsvr32.exe 注册的.
      

  6.   

    这个问题应该是路径的问题了。如果是在VB环境下运行,建议先将该DLL复制
    到与vb.exe同一目录,在运行看看有没有报错。
    另外要看看你报错的没找到的DLL是不是testdll.dll(如不是,说明该dll调用了
    别的dll,而被调用的dll没找到)
    还是不行的话,在环境变量PATH中添加一个你当前应用程序所在的目录看看如何
      

  7.   

    本人以前使用文通OCR的dll时也出现这个问题(运行/系统目录均有该DLL),后来干脆将运行目录添加到PATH中就OK
      

  8.   

    谢谢各位先 环境变量中PATH已经把路径加进去了.并重起机器了.问题还是存在啊!
      

  9.   

    会不会是你的dll本身写的有问题呢。
      

  10.   

    看来还真是的.(这个Test.DLL是用DELPHI写的程序中用到了其他的控件,所以要把相关的DLL和Test.DLL放在一起.)
    非常感谢各位同仁!!