CreateObject, эквивалентный для C# 4, динамического ключевого слова и позднего связывания?

Как я создаю динамический объект COM/OLE/ActiveX в C# 4.0 от идентификатора программы или ProgID (такого как "Word. Приложение"), не ссылаясь на библиотеку?

В C# 3.5 я должен был бы записать что-то как

Type comObjectType = Type.GetTypeFromProgID(progId, true);
Activator.CreateInstance(comObjectType);

Существует ли более легкий способ сделать это в C# 4.0, таким образом, я могу присвоить его переменной динамичного типа (использование динамического ключевого слова)?

10
задан TrueWill 14 July 2010 в 23:20
поделиться

1 ответ

Что не так с

dynamic myTypeInstance = Activator.CreateInstance(Type.GetTypeFromProgID(typeName, true));

?

Если это известное имя типа, то и

dynamic myTypeInstance = Activator.CreateInstance("typeName", "assemblyName");
14
ответ дан 3 December 2019 в 23:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: