0

私は現在、他の誰かが作成したアバターを使用する必要がある Java のプロジェクトに取り組んでいます。このアバターは、グラフィカルな実行可能ファイルです。xmlrpc を介して Java アプリケーションと通信します。

Java アプリケーション内でこの実行可能ファイルを実行 (埋め込み) できるようにしたいと考えています。実行可能ファイルを実行するだけでなく、Java アプリケーション内で実際に表示できるようにしたいのです。

私はこの動作が C# (Process クラス) で可能であることを知っているので、疑問に思っていました: これは Java でも可能ですか?

アプリケーションのアバターはスケーラブルでなければなりません。

4

1 に答える 1

2

あなたが示したC#では、実行中の埋め込み実行可能ファイルのメイン ウィンドウの親を から新しく作成されたコントロールに変更するために使用するWin32 API トリックを使用しています。そのためには、次のことを行う必要があります。SetParentdesktop window

  • 埋め込み実行可能ファイルを含むWinAPI ウィンドウ コントロールを作成する
  • Windows APIにアクセスして、実行中の .exe メイン ウィンドウのハンドルを取得する
  • 使用するWindows APIにアクセスできるSetParent

問題は、Java で Windows API にアクセスできないことです。また、JVM によって作成されたWinAPI Window コントロールに直接アクセスできないため(文書化されていない Windows 固有の Sun API を使用する場合を除いて)、JNAJNIのようなものを使用するのは簡単ではありません。

于 2013-05-03T12:18:15.020 に答える