反射技术:调用被测试窗口方法获取异常问题
有一个需求是:我在一个A窗口点击按钮后启动另一个程序B窗口来测试,在A窗口使用反射技术来获取B窗口的信息,代码如下: Assembly asm = Assembly.LoadFrom(applicationPath);
Type typeUT = asm.GetType(typeName);
object obj = Activator.CreateInstance(typeUT);
MethodInfo mi = typeUT.GetMethod("Show",allFlags);
mi.Invoke(obj,null);
return obj;
这段代码能够获取A窗口的类型,但是就是不能找到A的窗口方法Show()来显示该窗口出现,程序执行到
typeUT.GetMethod这段代码就直接跳过了,也就是有问题,但是我这样写确实没问题啊,我要得到A窗口的Show()方法,参数第一写方法名,第二个参数allFlags=private static BindingFlags allFlags = BindingFlags.Public | BindingFlags.NonPublic |BindingFlags.Static | BindingFlags.Instance; 请问下各位高手,为什么这段代码得不到A窗口方法啊?
------解决方案--------------------