1

即使一个应用程序崩溃,有哪些选项可以保持对两个应用程序的持久引用,以便在重新打开第一个应用程序时,它可以获得对第二个应用程序的引用并在其上调用方法。

情况如下:

  • App1(Web 浏览器插件)通过 HTML 页面中的对象引用实例化 App2 并获取对它的引用,以便它可以对 App2 进行 API 调用。

  • App1 崩溃,但 App2 保持打开状态。

  • 当 App1 重新打开时,它需要获取对 App2(仍在运行)的引用,以便它可以继续进行 API 调用。

这一切都是在机器上以管理员身份运行的。App1 在崩溃后重新打开时获取对仍在运行的 App2 的引用的最佳方法是什么?

4

2 回答 2

1

IPC有许多不同的选项可以工作。

如果您尝试从 App1 到 App2 进行 API 调用,那么您已经在其中使用了某种形式的 IPC。我只是使用允许从任何进程使用的命名管道之类的东西。如果 App2 是管道服务器,App1 可以连接到它,如果它崩溃了,新的 App1 可以再次作为客户端连接到它。

于 2009-05-20T00:41:47.833 回答
0

您可以尝试使用EnumProcesses来查找正在运行的 App。

http://msdn.microsoft.com/en-us/library/ms682623(VS.85).aspx有一些示例代码。

于 2009-05-20T01:18:59.710 回答