C#-DllImport 路徑問題

原文: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);   // 這種方式只會修改當前進程的環境變量
    }
相關文章
相關標籤/搜索