Я пишу алгоритм, который хочет проверить, есть ли google-хром или имеет ту же версию, что и вход, заданный пользователем. для этого мне нужен способ проверить, какая версия google-chrome имеет. Я использую Linux-программу для программирования, но я хочу, чтобы она работала дома, где я использую win 8.1
Есть ли способ проверить в C/C++, что такое версия программы? Я считаю, что лучше всего получить awnser в строке, потому что тогда я могу просто сравнить с
if(strcmp(version, input)=1)
Спасибо за прочтение.
PS. Я начал в C++, но я могу изменить, даже если java, если необходимо
вот базовая версия того, что у меня есть сейчас:
#include <iostream>
#include <string>
using namespace std;
#define x 256;
int main(){
std::string version;
std::string input;
//get version
if(strcmp(version, input)=1){
//versions are equal
}
//chrome needs to be updaded
return 0;
}
Вы можете запустить терминальный процесс с C с помощью команды popen(). Вам нужно будет включить заголовок stdio.h. Вот фрагмент кода, который может вам помочь:
FILE *pd = popen("google-chrome --version", "r");
char output[50];
fgets(output,50,pd);
pclose(pd);
В выходном массиве вы получите что-то вроде "Google Chrome 25.0.1364.97",
google-chrome --version
печатает версию браузера.