windows - VB6 - 找不到 DLL

标签 windows dll vb6

我正在尝试使用命令在 VB6 中加载 DLL

私有(private)声明函数 myFuncLib "myDLL.dll"(ByVal file_name_in As String, _ ByVal file_name_out As String) As Long

但是一旦我运行该程序,它就会弹出一个带有文本的框:“运行时错误:53 找不到:myDLL.dll”

DLL放在项目的同一目录下。

如果我将 myDLL.dll 放在 system32 文件夹中它可以工作,但我不想这样做,我想将 dll 放在项目的同一文件夹中。

有没有办法解决这个问题?

谢谢

最佳答案

我的灵力预测您正在从 VB6 IDE 运行 - 因为构建的 EXE 在应用程序目录(与 exe 相同的目录)中找到 DLL。

  • 当您从 VB6 IDE 运行时,它从应用程序目录中找到 DLL...但它认为应用程序目录是包含 VB6 IDE 本身的目录:(
  • 一种解决方法是在尝试使用 DLL 之前将当前工作目录更改为 VBP 目录。例如。 Chdrive App.Path: Chdir App.Path(空码)
  • 编辑 根据 Beppe 的评论。您可以尝试的另一种解决方法是,就在您的开发机器上,将 DLL 的副本放在安装 VB6 IDE 的同一目录中。可能是 C:\Program Files\Microsoft Visual Studio\VB98\ 您可以将带有内置 EXE 的 DLL 放在用户机器/生产机器上。

关于windows - VB6 - 找不到 DLL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5234386/

相关文章:

c# - 在 C# 中给定周数和年份计算一周的开始和结束日期(基于 ISO 规范)

windows - 查找 .bat 文件的文件夹名称

c - W32文本框自动换行

c - 链接到 c 中的 glew

delphi - 测试 Delphi DLL 导致 VB6 IDE 崩溃

.net - 如何通过 COM/VB6 将参数传递给 .net dll 中的函数?

c++ - 如何与调试器交谈,或更改异常消息?

c# - 在后台使用非托管库时无法更新 WPF GUI

c# - 无法加载文件或程序集。即使它位于正确的位置并且构建良好

python - SWIG 和 Mingw-64 与 Python 一起使用……不是有效的 Win32 应用程序