需要使用c ++程序查找java版本号

时间:2015-08-31 12:07:35

标签: visual-c++

我是C ++编程的新手。那么,我应该使用哪些库或函数从注册表中检索此信息?只是简单介绍一下从注册表中检索java版本号所涉及的步骤。我使用的是VC ++。

1 个答案:

答案 0 :(得分:0)

如果正确设置了java路径,则可以从代码中运行java -version: 使用此处描述的代码How to execute a command and get output of command within C++ using POSIX?

#include <string>
#include <iostream>
#include <stdio.h>

std::string exec(char* cmd) {
    FILE* pipe = _popen(cmd, "r");
    if (!pipe) return "ERROR";
    char buffer[128];
    std::string result = "";
    while(!feof(pipe)) {
        if(fgets(buffer, 128, pipe) != NULL)
            result += buffer;
    }
    _pclose(pipe);
    return result;
}

使用like:

int main(void) {
    std::cout << exec("java -version");
    return 0;
}