我有两个dll(sqlite),一个dll是64位,另一个是32位dll。是否可以根据处理器架构动态添加引用? P / Invoke是我的最后一个选择。任何帮助将不胜感激!!
示例代码:
string pathToDll = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\x64\\System.Data.SQLite.dll";
Assembly assembly = Assembly.LoadFrom(pathToDll);
AppDomain.CurrentDomain.Load(assembly.GetName());
答案 0 :(得分:6)
是的,您可以从文件中加载程序集
Assembly.LoadFrom("MyAssembly.dll");
从.net4 您可以使用Is64BitOperatingSystem Environment属性。否则,请检查根据运行架构
更改的IntPtr.Size