Я добавил .ocx в панель инструментов в VS.
Созданы два .dll: Interop.NNN.dll, AxInterop.NNN.dll.
Что это такое? Обязательны ли они?
Ответ 1
Узел AxFoo.dll содержит автоматически сгенерированный класс, полученный из элемента управления System.Windows.Forms.AxHost. Это довольно просто, у него есть методы, свойства и события, те же, что у вас есть в .ocx, которые просто вызывают библиотеку взаимодействия Foo.dll.
Итак, да, вам обязательно нужно развернуть обе сборки.
Ответ 2
Interop.xxx.dll и AxInterop.xxx.dll являются оболочками, вызываемыми вызовом (RCW) для ссылочного COM и DLL ActiveX соответственно.
interop.xxx.dll - это просто оболочка автоматизации (COM dll), позволяющая вам манипулировать объектом в пространстве имен вашего приложения. AxInterop.xxx.dll - это управляющая оболочка для элемента управления ActiveX, который можно перетащить в форму.