在 VB6 里,借助SetDllDirectory函数对 DLL 的默认搜索路径进行修改。该函数属于 Windows API,其具体声明如下:
Private Declare Function SetDllDirectory Lib "kernel32" Alias "SetDllDirectoryA" (ByVal lpPathName As String) As Long
下面是使用这个函数的示例:
' 设置DLL搜索目录
Call SetDllDirectory("C:\MyApp\Plugins")
' 调用位于新目录中的DLL函数
Call MyFunctionFromDLL()
当你调用SetDllDirectory之后,系统就会优先从你指定的路径去搜索 DLL 文件。要恢复默认的搜索路径,只需传入空字符串即可:
' 恢复默认搜索路径
Call SetDllDirectory("")
值得注意的是,SetDllDirectory在 Windows XP 及后续版本中才能使用。如果你需要兼容更早的系统版本,就得使用AddDllDirectory或者修改应用程序的清单文件。