如何正确退出CAcroApp?

时间:2012-07-19 04:36:52

标签: acrobat acrobat-sdk

我在一个简单的C#Console程序中引用了Acrobat.dll,然后编写了几行代码来运行Acrobat。

CAcroApp mApp = new AcroAppClass();
Console.WriteLine("Acrobat is running");
bool bClose = mApp.CloseAllDocs();
bool bExit = mApp.Exit();

但是,当CloseAllDocs()返回true时,Exit()始终返回false。

因此我仍然可以在任务管理器中看到Acrobat进程运行。

但是,一旦程序结束,该过程也会自动被杀死。

如何制作它以便我可以从程序中关闭Acrobat进程而不必退出程序?

1 个答案:

答案 0 :(得分:0)

根据我的经验,只有当所有相关对象都被垃圾收集时,Acrobat进程才会关闭。要强制收集,请使用以下代码:

GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();

注意:仅当相关对象(例如mApp)不在范围内时,垃圾收集才有效。