C# 调用COM组件的方式
最近使用winform调用com组件碰到部署的问题,有的客户端虽然已经注册了需要是用的com组件,但是调用的时候还是会发生错误
于是有了漫长的解决问题的过程,最终解决方案如下:
不使用之前的引用方式引用com组件,使用类似vb的createobject根据proid创建com组件,C#代码如下:
System.Type obj = System.Type.GetTypeFromProgID(proid);
if (obj != null)
object o = Activator.CreateInstance(obj);
obj.InvokeMember("方法名", System.Reflection.BindingFlags.InvokeMethod, null, o, new object[] { 需要传入的参数});