Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从Adobe Acrobat Reader和DejaVu Reader进程中提取当前页面?_C#_.net_Pdf_Djvu - Fatal编程技术网

C# 从Adobe Acrobat Reader和DejaVu Reader进程中提取当前页面?

C# 从Adobe Acrobat Reader和DejaVu Reader进程中提取当前页面?,c#,.net,pdf,djvu,C#,.net,Pdf,Djvu,我想制作一个C#程序,它将为pdf和djvu文件保存书签。 如何从AcroRd32/DjVuReader进程中查找当前页码?您可以通过Adobe Acrobat支持的DDE协议进行查找。检查Acrobat的DDE规范() 现在,如果您不熟悉DDE,请允许我简要介绍一下—它是一种基于Microsoft(Windows)的IPC协议,类似于命名管道(Windows)、COM(OLE)、WCF、MSMQ(用于IPC)、RPC等。。实际上,在我看来,MSMQ可能是最接近的 基本上,通过DDE,您可以连接

我想制作一个C#程序,它将为pdf和djvu文件保存书签。
如何从AcroRd32/DjVuReader进程中查找当前页码?

您可以通过Adobe Acrobat支持的DDE协议进行查找。检查Acrobat的DDE规范()

现在,如果您不熟悉DDE,请允许我简要介绍一下—它是一种基于Microsoft(Windows)的IPC协议,类似于命名管道(Windows)、COM(OLE)、WCF、MSMQ(用于IPC)、RPC等。。实际上,在我看来,MSMQ可能是最接近的

基本上,通过DDE,您可以连接到DDE服务器(运行acrobat的本地计算机),并向其发送消息/命令。诀窍在于.NET(任何版本)都不支持DDE。为了解决这个问题,您可以在上使用NDDE包装器(用托管C++编写)

我已经成功地强制AcroRd32.exe打开文件,将特定页面打印到网络打印机。。。etc使用这个库(NDDE),这就是我推荐它的原因。这肯定比支付Acrobat开发工具包许可证更糟糕。。。。grrrrrr

不管是哪种情况,我希望这能有所帮助。您可能可以通过OLE automation&COM实现,但我从未尝试过

谢谢

<bleepzter/>

请记下我的问题,如果它对你的努力有帮助:)谢谢