VC执行Cmd命令,并获取结果

参考:https://blog.csdn.net/VonSdite/article/details/81295056

方法一:使用popen

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

// 描述:execmd函数执行命令,并将结果存储到result字符串数组中
// 参数:cmd表示要执行的命令,  result是执行的结果存储的字符串数组
// 函数执行成功返回1,失败返回0
#pragma warning(disable:4996)
int execmd(char* cmd, char* result) {
    char buffer[128]; //定义缓冲区
    FILE* pipe = _popen(cmd, "r"); //打开管道,并执行命令
    if (!pipe)
        return 0; //返回0表示运行失败
    while (!feof(pipe)) {
        if (fgets(buffer, 128, pipe)) { //将管道输出到result中
            strcat(result, buffer);
        }
    }
    _pclose(pipe); //关闭管道
    return 1; //返回1表示运行成功
}

int main(void)
{
    char SystemInstallDate[] = "c:\\windows\\system32\\systeminfo|findstr 初始安装日期";
    char PCserialnumber[] = "wmic bios get serialnumber";
    char MACAddress[] = "ipconfig /all|findstr 物理地址";
    char IPAddress[] = "ipconfig /all|findstr IPv4";
    char MACIPAddress[] = "wmic nicconfig get IPAddress,MACAddress";
    char HDserial[] = "wmic diskdrive get Caption,SerialNumber";

    char res[1024] = { 0 };
    execmd("wmic diskdrive get SerialNumber", res);
}
View Code

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-26
  • 2021-06-25
  • 2022-12-23
  • 2021-05-18
猜你喜欢
  • 2021-10-11
  • 2022-12-23
  • 2022-12-23
  • 2022-02-11
  • 2022-12-23
  • 2022-12-23
  • 2022-01-03
相关资源
相似解决方案