主页
技术支持
LabVIEW 可执行文件找不到 DLL
LabVIEW 可执行文件找不到 DLL
更新 Nov 6, 2023
适用于
“适用于”表示本页面提供的解决方案已被证实适用于列出的产品。该方案或同样适用于类似产品或应用。
软件
LabVIEW Application Builder Module
问题详述
我已经创建了一个在我的开发计算机上运行良好的 LabVIEW 可执行文件,但在部署计算机上产生错误,因为找不到 DLL。如何将此库添加到可执行文件中?
我在我的构建中包含了一个 DLL 作为依赖项,但我部署的可执行文件仍然找不到该 DLL。我可以看到 DLL 正在部署机器上安装,但未正确加载。
我在部署计算机上运行 LabVIEW 应用程序时出现以下错误: “缺少外部函数 dll...”
解决方案
确保您的 DLL 包含在可执行文件的构建中。
如果您的代码正在对 DLL 进行动态调用,那么您将需要通过手动将 DLL 添加到项目
来管理项目的依赖项
。
使用相对路径调用 DLL。
将 DLL 包含在可以相对于已知位置寻址的位置,例如已部署的可执行文件的目录。然后,您可以在 LabVIEW 中构建一个相对路径,只要 DLL 安装在相同的相对位置,该路径在部署机器上就有效。
确保 DLL 不包含在您的 user.lib 库中。
user.lib 库并不总是在搜索路径中;通过将您的 DLL 放在另一个文件夹中来找到它。
如果 DLL 是第 3 方驱动程序的一部分,请确保按照说明将其安装在部署计算机中。
某些使用 DLL 外部函数的第 3 方驱动程序需要其他依赖项才能正常工作。这些说明可能包括将文件复制到特定文件夹、添加环境变量路径等操作。您可以通过
在 LabVIEW 安装程序中包含第三方安装程序和驱动程序来
自动执行这些操作。
如果您不确定您的 DLL 需要哪些其他依赖项才能正确运行,您可以使用名为
Dependencies
的第 3 方应用程序对其进行分析。使用此程序,您将能够浏览 DLL 并查看需要安装的所需文件。
确保 DLL 路径名称在开发环境和目标环境之间没有变化。
如果是这样,在开发计算机上,转到构建规范
选择附加除项。
禁用不包括非独立共享库。
这会将 DLL 包含在“始终包含”文件夹中。
相关信息
链接到项目构建的 DLL 可能难以调试。本文解决了因在 LabVIEW 代码中错误地获取 DLL 而引起的问题。但是,还有许多其他可能与 DLL 相关的问题。如果您已尝试此处的步骤但仍然遇到与 DLL 相关的错误,请参阅本文的相关链接部分。
动态调用的 DLL 不会立即作为依赖项添加到包含动态调用的项目的构建规范中。它们必须手动添加。
在机器之间移动代码时,绝对路径是有问题的,因为它们通常特定于开发机器。两台机器上的文件路径必须相同,绝对路径才能有效工作。由于这在大多数应用程序中几乎是不可能的,因此建议使用相对路径。
相关链接
从LabVIEW调用动态链接库(DLL)
我的应用程序(EXE)不能正确动态调用我的插件
指定路径中可执行文件找不到DLL
Resource Not Found Error When Running My LabVIEW Executable
其他支持选项
询问NI社区
在我们的论坛中与其他用户协作
搜索NI社区以寻求解决方案
请求工程师的支持
可能需要有效的服务协议或有效的软件订阅,同时支持选项因国家/地区而异
打开服务请求
了解软件订阅和服务
了解硬件服务计划
Was this information helpful?
Helpful
Not Helpful