Win32和Acrobat

时间:2010-02-24 21:24:01

标签: pdf winapi plugins

我在C中编写了一个简单的Win32应用程序,我想在其中打开PDF。我知道我可以编译并链接到Poppler库,但有没有办法使用Acrobat Reader?有点像浏览器那样,如果安装了Reader,它们会自动通过一些插件界面在窗口中显示PDF。问题是,我从未使用过插件,没有写过这样的界面。如何?是否也可以在之后安装Reader并以某种方式让应用程序知道它的存在?

我还想控制缩放。 PDF也可以在内存中。

编辑:

我刚发现[1]: “如果您已安装Adobe Reader,则可以在VisualStudio中向PDf查看器ActiveX控件添加COM引用,并在WindowsFormsHost控件中使用它。” 但是我不明白它说的是什么:如何在普通的Win32 C中创建“COM引用”并使用“WindowsFormsHost”?

[1] PDF Libraries to Display a PDF document in WPF

2 个答案:

答案 0 :(得分:1)

在Windows上,如果键入mypdf.pdf并在命令提示符中单击“返回”,则会在关联的应用程序 (在大多数情况下为Adobe Reader) 中打开pdf。所以在c#中我启动一个新进程,将pdf作为文件运行

你应该可以在c中做类似的事情,而不必费心插件。

答案 1 :(得分:1)

除了Nifle所说的,如果不是将其作为单独的应用程序运行,而是想在应用程序窗口中将Acrobat Reader作为插件运行(例如IE在IE窗口中运行它),Adobe Acrobat Reader download page说,

  

包含Internet Explorer的ActiveX控件和Netscape Navigator的插件,并自动安装在您选择的浏览器中。

插件技术可能是名为ActiveX的技术。