В чем разница между AxInterop и Interop? - PullRequest
18 голосов
/ 18 февраля 2010

Я добавил .ocx на панель инструментов в VS. Были созданы две .dll: Interop.NNN.dll, AxInterop.NNN.dll.

Что такое каждый? Они оба необходимы?

Ответы [ 2 ]

16 голосов
/ 18 февраля 2010

Interop.xxx.dll и AxInterop.xxx.dll представляют собой вызываемые оболочки времени выполнения (RCW) для ссылочного COM и DLL ActiveX соответственно.

interop.xxx.dll - это просто оболочка автоматизации (COM dll), позволяющая вам манипулировать объектом в пространстве имен вашего приложения. AxInterop.xxx.dll - это оболочка элемента управления ActiveX, которую можно перетащить в форму.

11 голосов
/ 18 февраля 2010

Сборка AxFoo.dll содержит автоматически сгенерированный класс, производный от элемента управления System.Windows.Forms.AxHost. Это довольно просто, у него есть методы, свойства и события, те же, что и в .ocx, которые просто вызывают библиотеку взаимодействия Foo.dll.

Итак, да, вам обязательно нужно развернуть обе сборки.

...