[C++] 在程序里调用DOS命令

程序里调用DOS命令,网上一般介绍说用system()函数。但是system()函数会有黑窗口跳出来,于是想到了如下办法:

//'cmd' is DOS command line, like "mkdir d://test"
void ExeCmd(char* cmd)
{
    char param[10000];
    sprintf(param, "/C /"%.1000s/"", cmd);
    HINSTANCE hresult = ShellExecuteA(NULL, "open", "cmd.exe", param, NULL, SW_HIDE);

    return;
}

这个方式比system(cmd)要好,因为这个方式不会有黑窗口。

这个函数用来删除目录也非常好,比如ExeCmd("rmdir /s /q d://test");

原文地址:https://www.cnblogs.com/hehe520/p/6330430.html