Пользовательский элемент управления COM / Active X Не может вставлять типы взаимодействия - PullRequest
0 голосов
/ 02 октября 2018

В настоящее время я пытаюсь использовать элемент управления Active X «Adobe PDF Reader» в приложениях формы Windows.

Добавление этого элемента управления в форму создает две новые ссылки в проекте

AcroPDFLib (Имя: Interop.AcroPDFLib) AxAcroPDFLib (Имя: AxInterop.AcroPDFLib)

и в файле .csproj я получаю два ссылочных элемента COM.

Я изо всех сил пытался найти документациюо том, с чем я сейчас борюсь.

То, что я хочу сделать, включено: «Внедрить типы взаимодействия». Однако я не могу этого сделать.для AcroPDFLib.Однако компилятор говорит мне, что он все еще обрабатывает его как ссылку, так как он является ссылкой AxAcroPdf, а это не внедрено.

Если я пытаюсь встроить AxAcroPdfLib, он говорит, что не может, потому что в моем коде я долженсоздайте экземпляр AxAcroPdf (это элемент управления, который отображает PDF) и предлагает вместо этого использовать интерфейс.Однако нет интерфейса для использования.Интерфейс из библиотеки COM (IAcroAXDocShim) не реализован в AxAcroPdf, но на самом деле он заключен в оболочку. AxAcroPDF имеет закрытое поле типа IAcroAXDocShim.

Поэтому я не вижу способа внедрить ни одно из этихБиблиотеки COM, что я хотел бы сделать.

Это вызывает у меня проблемы, так как мой сервер сборки не может собрать проект, но у него нет этих COM-библиотек, и из того, что я читал, я не долженсоздать пакет Nuget из COM DLL.Так что я немного растерялся, как обойти это

...