我想加載一個DLL文件,如果它存在,並創建一個新的實例,將其轉換並傳遞給另一個函數。如何加載DLL並在C#中創建一個新實例?
我目前做的是什麼添加一個引用到DLL,並創建一個實例,例如,
ConfigFileSystemRegistry.Instance.RegisterFileSystem("er://", new Efs());
我試圖動態加載它,但它給使用System.TypeInitializationException
我的代碼是:
if (File.Exists("plugin\\Efsystem.dll"))
{
Assembly assembly = Assembly.LoadFrom("plugin\\Efsystem.dll");
Type type = assembly.GetType("Efs");
ConfigFileSystemRegistry.Instance.RegisterFileSystem("er://", (IFileSystem) Activator.CreateInstance(type));
}
什麼是DLL的實例? – Oded
抱歉,我的意思是DLL中特定類的實例。 – segfault
什麼是'System.TypeInitializationException'的異常消息? – Peter