如何在Windows平台上的两个应用程序之间保持持续的引用,即使一个崩溃并重新打开?

有什么办法保持对两个应用程序的持久引用,即使发生了一个崩溃,当重新打开第一个应用程序时,它可以获得对第二个应用程序的引用并调用其上的方法。

情况如下:

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

IPC有很多不同的选择 。

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

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

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