在开发环境中调用 LabView 时不会卸载 dll
LabView doesn't unload dll when called in development environment
我有一个使用外部 C DLL 的 LabView 应用程序。当我 运行 我的应用程序在开发环境中时,即使在应用程序关闭后 DLL 也被阻止。
当我想覆盖或删除DLL时,我必须先完全关闭LabView。
这是一个已知问题吗?谁能提供这个问题的解决方案?
是的,您必须在 LabVIEW 应用程序中做两件事:
- 在程序框图上而不是在配置对话框中指定库的路径(这将 LabVIEW 的行为从加载时链接更改为 运行 时链接)。
- 当您使用完 DLL 节点后,连接一个空路径以告诉 LabVIEW 您已使用完它(这会导致 Windows' 引用计数减至 0 并且 OS 将解锁文件)。
此处有更多详细信息:Can I Dynamically Load and Unload a DLL in LabVIEW?
我有一个使用外部 C DLL 的 LabView 应用程序。当我 运行 我的应用程序在开发环境中时,即使在应用程序关闭后 DLL 也被阻止。
当我想覆盖或删除DLL时,我必须先完全关闭LabView。
这是一个已知问题吗?谁能提供这个问题的解决方案?
是的,您必须在 LabVIEW 应用程序中做两件事:
- 在程序框图上而不是在配置对话框中指定库的路径(这将 LabVIEW 的行为从加载时链接更改为 运行 时链接)。
- 当您使用完 DLL 节点后,连接一个空路径以告诉 LabVIEW 您已使用完它(这会导致 Windows' 引用计数减至 0 并且 OS 将解锁文件)。
此处有更多详细信息:Can I Dynamically Load and Unload a DLL in LabVIEW?