程序里调用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");