2009-10-28 21 views
10

参照として追加せずに、.NETのGACでCOMオブジェクトを手動で呼び出す方法はありますか。.NET経由でCOMオブジェクトを手動で呼び出す方法

私が尋ねる理由は、C#でコーディングする方法を知っていて、.NET COMオブジェクトを呼び出してそのCMO呼び出しが表示されているかどうかをテストしたいが、明らかに.NET COMオブジェクトを。 NETアセンブリ!あなたはそれを参照する必要があるので、私はそれがGACに手動でC#コードを介して登録されている場合、それを呼び出すことができますか?ネット4では

答えて

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

この

Type myType = Type.GetTypeFromProgID("IMyLib.MyClass"); 
dynamic obj = Activator.CreateInstance(myType); 
obj.MyMethod("Hello", 3); 
+0

のようなものはあまりのuをありがとう! – David

+0

C#4.0の構文は、初期のリリースされていないプロトタイプに基づいています。しかし、私は正しい構文を与えるためにVS2010B2をインストールしていない...私は誰か他の人が行うと確信しています。 –

+0

私は投稿を編集しましたが、私はvs 2010もインストールされていませんが、私はこれを行う正しい方法です知っている –

関連する問題