문제

참조로 추가하지 않고 .NET의 GAC에서 COM 객체를 호출하는 수동 방법이 있습니까?

내가 묻는 이유는 C#에서 코딩하는 방법 만 알고 .NET COM 객체를 호출하고 CMO 호출이 표시되는 것을 테스트하지만 .NET COM 객체를 .NET 어셈블리에 추가 할 수는 없습니다! 당신이 그것을 참조해야 하듯이, C# 코드를 통해 GAC에 수동으로 등록 된 경우 전화 할 수 있을까요?

도움이 되었습니까?

해결책

Type myType = Type.GetTypeFromProgID("IMyLib.MyClass");
object obj = Activator.CreateInstance(myType);
object[] args = new object[2];
args[0] = "Hello";
args[1] = 3;
myType.InvokeMember("MyMethod", BindingFlags.InvokeMethod, obj, args);

.NET 4에서 이와 같은 것

Type myType = Type.GetTypeFromProgID("IMyLib.MyClass");
dynamic obj = Activator.CreateInstance(myType);
obj.MyMethod("Hello", 3);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top