在我的C ++应用程序中获取java.home位置的最佳方法是什么?现在我从注册表中获取它,但我想知道是否有更好/更容易/更清洁的方式。
谢谢, 哔叽
答案 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的位置。