我有一个 ActiveX 控件,可以在 IE 中显示给定文件格式的文档,就像 Adobe 有一个显示 PDF 的 ActiveX 控件一样。
我的控件是整页控件,就像 PDF 查看器一样 - 它使用 IE 自己的 EnableFullPage mechanism 接管 IE 的整个客户区.
我想控制与文档相关的各种菜单和工具栏命令:打印、打印预览、页面设置、另存为、全选、复制、查找等。我猜肯定有一个官方的 API 可以做到这一点,因为 PDF 查看器可以做到这一点。 (请注意,打印嵌入式 ActiveX 控件的标准机制不适用——我需要显示我自己的打印对话框并控制整个过程,就像 PDF 查看器一样。)
(在 IE8 之前,我可以通过使用 Win32 子类侵入 IE 本身来做到这一点,这很讨厌但可以工作。但是 IE8 将选项卡内容保留在与工具栏不同的进程中,因此如果没有 DLL 注入(inject),这不是一个选项,并且我可以看到 Adobe PDF veiwer 没有这样做。这就是为什么我相信有一个官方机制。)
最佳答案
可能是一些与DocObjects相关的接口(interface),也许是 IOleInPlaceFrame + IOleCommandTarget
关于internet-explorer - 我的 ActiveX 控件如何在 Internet Explorer 中接管打印、另存为、查找等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1426870/