在C ++中获取java.home的位置

时间:2010-07-02 17:24:53

标签: java c++

在我的C ++应用程序中获取java.home位置的最佳方法是什么?现在我从注册表中获取它,但我想知道是否有更好/更容易/更清洁的方式。

谢谢, 哔叽

3 个答案:

答案 0 :(得分:1)

如果JAVA_HOME设置为java主目录。如果不是val将为null。

char* val = getenv("JAVA_HOME");

答案 1 :(得分:0)

如果你在Unix / Linux机器上,也许你可以做“哪个java”。如果您在C ++中需要帮助,请参阅How to execute a command and get output of command within C++ using POSIX?

如果你在Windows的盒子里,有一个“who.bat”有人在过去成功使用过,虽然它并不是那么好。你必须去谷歌。

希望这可以指出你正确的方向!

答案 2 :(得分:0)

Windows安装的System32目录中经常有一个javaw副本,因此getenv("windir")并连接"\System32\javaw.exe"

然后第二个选择是打开文件浏览器对话框以选择javaw.exe的位置。