无法从Windows服务调用动态加载的DLL中的类

时间:2012-12-19 07:34:01

标签: c# windows-services runtime invokemember

这是我在C#DLL中的类

namespace MyNS
{
    public class MyClass
    {
        public static int Execute(string logKey, 
                                  string key, 
                                  XmlNode xmlPars)
        {
            return 0
        }
    }
}

我在运行时加载DLL并将Class Type加载到_type变量。但是当我从这样的Windows服务调用函数Exec​​ute时:

counter = (int)_type.InvokeMember("Execute", 
                                  BindingFlags.Public |
                                  BindingFlags.InvokeMethod | 
                                  BindingFlags.Static, 
                                  null, 
                                  null, 
                                  new object[] { 
                                                  logKey, 
                                                  Key, 
                                                  _xmlParams 
                                                });

我得到了“调用目标引发了异常。”
我在这做错了什么?

1 个答案:

答案 0 :(得分:1)

如何加载DLL,请您分享代码以动态加载dll。?

以下是示例代码。

Assembly assembly = Assembly.LoadFrom("ABC.dll");
object o = Activator.CreateInstance(assembly.GetType("ClassName"));
/// then invoke the method