Question

Existe-t-il un moyen manuel d'appeler un objet COM dans le GAC dans .NET, sans l'ajouter comme référence?

Je pose la question parce que je sais seulement comment coder en C # et que je veux appeler un objet COM .NET et vérifier que ses appels CMO sont visibles, mais vous ne pouvez évidemment pas ajouter un objet COM .NET à un .NET Assemblée! Comme vous devez vous y référer, je me demandais si vous pouviez l'appeler si elle était enregistrée manuellement dans le GAC via le code c #?

Était-ce utile?

La solution

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);

Dans .Net 4, quelque chose comme ça

Type myType = Type.GetTypeFromProgID("IMyLib.MyClass");
dynamic obj = Activator.CreateInstance(myType);
obj.MyMethod("Hello", 3);
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top