我目前正在开发一个 Java 项目,我们必须使用其他人创建的头像。这个头像是一个图形可执行文件。它通过 xmlrpc 与 Java 应用程序通信。
我希望能够在我的 Java 应用程序中运行(嵌入)这个可执行文件。我不只是想执行可执行文件,我希望它在 Java 应用程序中实际可见。
我知道这种行为在 C#(进程类)中是可能的,所以我想知道:这在 Java 中也可能吗?
应用程序中的头像必须是可扩展的。
我目前正在开发一个 Java 项目,我们必须使用其他人创建的头像。这个头像是一个图形可执行文件。它通过 xmlrpc 与 Java 应用程序通信。
我希望能够在我的 Java 应用程序中运行(嵌入)这个可执行文件。我不只是想执行可执行文件,我希望它在 Java 应用程序中实际可见。
我知道这种行为在 C#(进程类)中是可能的,所以我想知道:这在 Java 中也可能吗?
应用程序中的头像必须是可扩展的。
C#
您给出的示例使用Win32 API 技巧,用于SetParent
将正在运行的嵌入式可执行文件的主窗口的父窗口从desktop window
更改为新创建的控件。为此,您需要:
SetParent
问题是您无权访问 Java 中的 Windows API。甚至使用JNAJNI
之类的东西也不容易做到,因为您无法直接访问由 JVM 创建的WinAPI Window 控件(使用一些未记录的特定于 Windows 的 Sun API 除外)。