3

我在一个简单的 C# 控制台程序中引用了 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 进程而不必退出程序?

4

1 回答 1

0

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

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

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

于 2013-04-15T14:04:00.313 回答