Тема: Команди cmd

Мені потрібна інформація яку видає певна команда cmd
наприклад

system("ver");

цю інформацію можливо записати в масив символів, як це зробить ?

2

Re: Команди cmd

Прихований текст
самому цікаво, зара пошукаю
Говоріть українською! Живіть українською! Відчувайте українською!
Подякували: Betterthanyou1

3 Востаннє редагувалося FakiNyan (02.10.2014 23:53:28)

Re: Команди cmd

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;
}
Говоріть українською! Живіть українською! Відчувайте українською!
Подякували: Betterthanyou1

4 Востаннє редагувалося Betterthanyou (03.10.2014 00:23:52)

Re: Команди cmd

MVS13

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;
}

5

Re: Команди cmd

#include <iostream>
#include <fstream>

using std::ifstream;
using std::ios_base;

using std::cout;
using std::endl;

int main()
{
    system("dir > D:\\test.txt");
    
    ifstream f("D:\\test.txt", ios_base::in);
    
    if (f.is_open())
        for(char c; !f.eof(); )
        {
            f.read(&c, 1);
            cout << c; // або записати у масив
        }
    else
        cout <<"Fail to open file." << endl;
    
    f.close();
    
    return 0;
}