我正在尝试为我正在开发的游戏制作一个扩展设置(不会详细说明),但是单个扩展所需要的只是将1个.dll文件添加到我添加的
我已经找出如何访问下面所示添加到此文件夹中的.dll:
调用以下代码可以成功运行SomeMethod()。
Expansions
文件夹中。我已经找出如何访问下面所示添加到此文件夹中的.dll:
Assembly ExpAssembly = Assembly.LoadFrom("Expansions/Intrique.dll");
Type myType = ExpAssembly.GetTypes()[0];
这是我正在尝试加载的类的示例:
public class Expansion: MyGame.Expansion {
public Expansion() {
//Stuff
}
public string SomeMethod()
{
return "Test";
}
}
调用以下代码可以成功运行SomeMethod()。
MethodInfo Method = myType.GetMethod("SomeMethod");
object myInstance = Activator.CreateInstance(myType);
MessageBox.Show(Method.Invoke(myInstance, null).ToString());
但我想做的是能够通过写Expansion expObj;
并调用new Expansion()
来为其赋值,而这个调用不在库文件本身中。
Expansion expObj = (Expansion) myInstance;
@DanielA.White - apotter96