我正在尝试使用Type.InvokeMember
在运行时动态调用 com 对象中的方法。
我尝试执行的方法是DTE2.ExecuteCommand
(http://msdn.microsoft.com/en-us/library/vstudio/envdte._dte.executecommand.aspx)。
这是我正在使用的当前代码,似乎根本不起作用。
var DTE2 dte = ....;
var T = typeof(DTE2);
T.InvokeMember("ExecuteCommand",
BindingFlags.InvokeMethod,
null,
dte,
new object[] { "File.New", "" });
我收到以下错误
Method 'EnvDTE80.DTE2.ExecuteCommand' not found.
ExecuteCommand
在进一步检查中,我在使用以下代码时确实看到了方法信息。
var methods = T.GetMethods();
所以我相信我需要改变我BindingFlags.InvokeMethod
的其他东西。那会是什么?