原文:C# DllImport 相對路徑沒法找到dllhtml
DllImport DLL查找順序:
一、應用程序所在目錄
二、Windows目錄和Windows\System32目錄
三、環境變量目錄post
只須要你把引用的DLL 拷貝到這三個目錄下 就能夠不用寫路徑了url
最後的解決辦法:動態設置當前進程的環境變量,把sdk所在的目錄添加到環境變量中,這其內部就能夠找到本身的dll了spa
/// <summary> /// 添加環境變量 /// </summary> /// <param name="paths">路徑列表</param> internal static void AddEnvironmentPaths(IEnumerable<string> paths) { var path = new[] { Environment.GetEnvironmentVariable("PATH") ?? string.Empty }; string newPath = string.Join(Path.PathSeparator.ToString(), path.Concat(paths)); Environment.SetEnvironmentVariable("PATH", newPath); // 這種方式只會修改當前進程的環境變量 }