2012-05-09 65 views
0

我想在dll中使用run execute方法。我有2個DLL我可以訪問我的啓動dll'RUN方法:如何從另一個dll通過反射方法使用公共方法?

這下面的代碼不能運行Execute方法另一個DLL(網絡處理器)。我想要啓動NetworkProcessor.IpPing類的執行方法。但是我不能。 如何使用反射?

public void RUN(string uri, string serverGuid) 
{ 
    //something... 
    //something... 
    //something... 
+1

你得到了什麼錯誤? – Tigran

+0

接口是爲這類工作而製作的。 – HackedByChinese

+0

我添加了錯誤。你可以看到:) – programmerist

回答

3

如果指定BindingFlags.Public你還需要指定要麼BindingFlags.InstanceBindingFlags.Static,或兩者:

MethodInfo minfo = instance.GetType().GetMethod("Execute", BindingFlags.Public | BindingFlags.Instance); 

目前沒有指定,導致GetMethod返回NULL。

+2

你也可以省略BindingFlags,它也應該返回該方法。 – Seb

相關問題