按D中的文件名加载动态库
问题描述:
D中有通过指定确切文件名和路径加载动态库的方法吗?我想在专用文件夹中使用动态库实现插件系统。按D中的文件名加载动态库
我正在寻找类似Runtime.loadLibrary(in char[] name)
的东西,但不是名称,它应该采取完整路径。
答
Runtime.loadLibrary
按照dlopen
和LoadLibrary
执行。
从dlopen的手册页:“如果文件名包含一个斜杠(”/“),那么它被解释为(相对或绝对)路径名。”
从LoadLibrary的MSDN页面:“如果字符串指定完整路径,则该函数仅搜索该模块的路径。”
所以你所要做的就是传递一个完整的路径到loadLibrary,它应该可以工作(假设loadLibrary可以工作,但我不确定它是否在当前版本中完全实现)。