Здравствуйте VladD2, Вы писали:
VD>1. Обявить интерфейс (который в последствии будет использоваться как главный (default) интерфейс ком-объекта) отдельно от описания класса.
Интерфейс отдельно можно и не объявлять, пусть c# сам поработает и если вы не завели новые public методы, свойства и т.п., т.е. не расширили интерфейс, то будет работать без перерегистрации.
Например,так
[ClassInterface(ClassInterfaceType.AutoDual)]
VD>// Обратите внимание на то, что версия сборки задана явно!
VD>// Т.е. без использования знака *. Это позволяет отучить VS
VD>// излишне беспокоиться о "правильности" версии сборки.
VD>// И тем самым снять проблему постоянной перерегистрации
VD>// COM+-приложения, COM+-прокси и перекомпиляции клиента.
VD>[assembly: AssemblyVersion("1.1.100.200")]
Так вот с этой строчкой работает ничуть не хуже
[assembly: AssemblyVersion("1.1.*")]
и не требуется ни какой перерегистрации приложения или перекомпиляции клиента