我尝试将基于反射的后期绑定库实现到Microsoft Office.Offce COM对象的属性和方法按以下方式调用:
Type type = Type.GetTypeFromProgID("Word.Application");
object comObject = Activator.CreateInstance(type);
type.InvokeMember(<METHOD NAME>, <BINDING FLAGS>, null, comObject, new object[] { <PARAMS>});
Run Code Online (Sandbox Code Playgroud)
InvokeMember是唯一可能的方法,因为Type.GetMethod/GetProperty与COM对象不能正常工作.
可以使用InvokeMember调用方法和属性,但现在我必须解决以下问题:
office-interop包装器中的方法:
Excel.Workbooks wb = excel.Workbooks;
Excel.Workbook firstWb = wb[0];
Run Code Online (Sandbox Code Playgroud)
分别
foreach(Excel.Workbook w in excel.Workbooks)
// doSmth.
Run Code Online (Sandbox Code Playgroud)
如何通过反射调用Excel.Workbooks的this [int index]运算符?