C# WPF-在gui中使用Interop.AcroPDFLib控件-如何处理错误?

C# WPF-在gui中使用Interop.AcroPDFLib控件-如何处理错误?,c#,.net,com,acrobat,adobe-reader,C#,.net,Com,Acrobat,Adobe Reader,我正在WindowsFormsHost控件中使用Adobe控件来渲染PDF。此功能对于应用程序并不重要,并且不是每个用户都会安装Adobe Reader 我的问题是,一旦我尝试用控件打开某个对象,并使其可见性随后崩溃,那么什么是检测该对象是否出错或是否会出错的最佳方法 我需要在实际打开任何PDF之前找到它,因为应用程序需要下载PDF,而且它们可能很大。我发现无法捕获此控件中发生的所有异常。如果您不希望它冻结您的应用程序,请在完全独立的进程中运行它。这对您来说不是新闻,但在com或.NET中托管A

我正在WindowsFormsHost控件中使用Adobe控件来渲染PDF。此功能对于应用程序并不重要,并且不是每个用户都会安装Adobe Reader

我的问题是,一旦我尝试用控件打开某个对象,并使其可见性随后崩溃,那么什么是检测该对象是否出错或是否会出错的最佳方法


我需要在实际打开任何PDF之前找到它,因为应用程序需要下载PDF,而且它们可能很大。

我发现无法捕获此控件中发生的所有异常。如果您不希望它冻结您的应用程序,请在完全独立的进程中运行它。

这对您来说不是新闻,但在com或.NET中托管Acrobat控件是有问题的。每次卸载并重新加载时将其关闭。只需在axCroPDF控件上调用.Dispose即可完成此工作,还是我还需要终止adobe进程?将以.Dispose开始。由于用户将拥有不同版本的Adobe和不同的配置,因此没有单一的答案。没有完美的答案。我知道,我只是想,即使是adobe控件中的致命错误,如无效pdf文件,也不会在我的应用程序中引发任何异常,因此我无法检测它们。不幸的是,这样的错误使整个应用程序完全冻结:。您会发现其他令人高兴的事情,比如它吃掉了一个键关闭事件。如果你能去XPS,微软会提供可靠的用户界面控件。但你不会找到一种免费甚至廉价的方法来可靠地批量创建XPS。