我目前正在尝试在Windows窗体应用程序中使用“ Adobe PDF Reader” Active X控件。
将此控件添加到表单中会在项目中创建两个新引用
AcroPDFLib(名称:Interop.AcroPDFLib) AxAcroPDFLib(名称:AxInterop.AcroPDFLib)
在.csproj文件中,我得到了两个COM参考元素。
我一直在努力寻找有关自己正在苦苦挣扎的文档。
我想做的是启用“嵌入式互操作类型”,但是,我无法做到这一点。
我可以将AcroPDFLib的Embed互操作类型设置为true。但是,编译器告诉我,由于AxAcroPdf引用了该引用并且未将其嵌入,因此仍将其视为引用。
如果我尝试嵌入AxAcroPdfLib,它说不能,因为在我的代码中,我必须创建一个AxAcroPdf实例(该控件显示pdf),并建议我改用该接口。但是,没有要使用的接口。 COM库(IAcroAXDocShim)的接口不是由AxAcroPdf实现的,而是由它包装的,AxAcroPDF具有一个IAcroAXDocShim类型的私有字段。
所以我看不到我想要做的一种嵌入这两个COM库的方法。
这引起了我的问题,因为我的构建服务器无法构建项目,但是它没有这些COM dll,从我一直读到的内容中,我不应该从COM dll创建Nuget程序包。所以我对如何解决这个问题有点迷茫