1

1 つがクラッシュした場合でも 2 つのアプリケーションへの永続的な参照を保持し、最初のアプリケーションを再度開いたときに、2 つ目のアプリケーションへの参照を取得してメソッドを呼び出すことができるオプションは何ですか。

状況は次のとおりです。

  • App1 (Web ブラウザ プラグイン) は、HTML ページ内のオブジェクト参照を介して App2 をインスタンス化し、それへの参照を取得して、App2 への API 呼び出しを実行できるようにします。

  • App1 はクラッシュしますが、App2 は開いたままです。

  • App1 が再び開いたら、API 呼び出しを続行できるように、App2 (まだ実行中) への参照を取得する必要があります。

これはすべて、マシン上で管理者として実行されます。App1 がクラッシュ後に再度開いたときに、まだ実行中の App2 への参照を取得するための最良の方法は何ですか?

4

2 に答える 2

1

動作するIPCにはさまざまなオプションがあります。

App1からApp2へのAPI呼び出しを行おうとしている場合は、すでに何らかの形式のIPCを使用しています。任意のプロセスから使用できる名前付きパイプのようなものを使用します。App2がパイプサーバーの場合、App1はそれに接続でき、クラッシュした場合、新しいApp1はクライアントとして再度接続できます。

于 2009-05-20T00:41:47.833 に答える
0

EnumProcessesを使用して、実行中のアプリを見つけることができます。

http://msdn.microsoft.com/en-us/library/ms682623(VS.85).aspxにいくつかのサンプルコードがあります。

于 2009-05-20T01:18:59.710 に答える