Существует фактический Тип данных под названием KeyValuePair, используйте как это
KeyValuePair<string, string> myKeyValuePair = new KeyValuePair<string,string>("defaultkey", "defaultvalue");
Add reference to Microsoft.VisualBasic.dll
and then:
Microsoft.VisualBasic.Information.TypeName(someCOMObject)
MSDN reference here.
Вы в принципе поняли. GetType () для COM-объекта даст вам System .__ ComObject, и вы должны попытаться преобразовать его в что-то еще, чтобы увидеть, что это за объект на самом деле.