D中是否可以通过指定确切的文件名和路径来加载动态库?我想使用专用文件夹中的动态库来实现插件系统。

我正在寻找类似于Runtime.loadLibrary(in char[] name)的东西,但是应该使用完整路径而不是名称。

最佳答案

Runtime.loadLibrary是根据dlopenLoadLibrary实现的。

在dlopen的手册页中:“如果文件名包含斜杠(“/”),则将其解释为(相对或绝对)路径名。”

在LoadLibrary的MSDN页面上:“如果字符串指定了完整路径,则该函数仅在该路径中搜索模块。”

因此,您要做的就是将完整路径传递给loadLibrary,它应该可以正常工作(假设loadLibrary可以正常工作,所以我不确定当前版本中是否完全实现了该功能)。

关于runtime - 在D中按文件名加载动态库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21919779/

10-09 22:44