4

我有一个在命令行中运行的可执行 JAR。我想使用 VC++ for windows 为这个程序创建一个 GUI。有没有办法从本机 C++ 中“挂钩”Java 线程,或者从 C++ 线程中启动 JAR?我查看了 JNI,但似乎需要编写 Java 以考虑此功能。目前,我没有能力修改预编译的 JAR。我想要做的甚至可能吗?

提前感谢您提供的任何建议。

4

2 回答 2

4

如果您想从 Java 调用 C++,则只需使用 JNI 功能编写 java。如果您想从 C++ 调用 Java,它可以正常工作而无需对 JAR 进行任何更改。如果您查看 java.exe 的源代码,您会看到一个示例。

查看java.exe 源代码中的第 540-610 行

于 2012-11-09T19:50:48.630 回答
0

你想用它做什么?简单启动的简单方法是使用 system() 调用,它可以调用任何可执行文件,包括 .bat 文件。一种更复杂的方法是让它们成为客户端-服务器应用程序并通过 localhost 进行通信(例如很多基于网络的守护进程,如 IRCd)

于 2012-11-09T19:44:24.660 回答