进程方式执行CMD命令及使用CMD命令一次创建多级录

来源:互联网 发布:大数据技术的概念 编辑:程序博客网 时间:2024/05/30 19:33
void exceCmd(LPCTSTR cmdLines){STARTUPINFO si;PROCESS_INFORMATION pi;ZeroMemory( &si, sizeof(si) );si.cb = sizeof(STARTUPINFO);ZeroMemory( &pi, sizeof(pi) );//这两句一定要,否则会显示出黑框框.si.wShowWindow = SW_HIDE;si.dwFlags = STARTF_USESHOWWINDOW | STARTF_USESTDHANDLES;TCHAR cmdBuf[0x100]={0};_stprintf_s(cmdBuf,TEXT("cmd /k %s"),cmdLines);// Start the child process. if( !CreateProcess( NULL,   // No module name (use command line)cmdBuf,        // Command lineNULL,           // Process handle not inheritableNULL,           // Thread handle not inheritableFALSE,          // Set handle inheritance to FALSE0,              // No creation flagsNULL,           // Use parent's environment blockNULL,           // Use parent's starting directory &si,            // Pointer to STARTUPINFO structure&pi )           // Pointer to PROCESS_INFORMATION structure) {OutputDebugString(TEXT("失败"));return;}// Wait until child process exits.WaitForSingleObject( pi.hProcess, INFINITE );// Close process and thread handles. CloseHandle( pi.hProcess );CloseHandle( pi.hThread );}
BOOL makeDir(LPCTSTR strPath){CString Str=strPath;if(Str.GetLength()>3){if( Str.ReverseFind('.') > 0 ){int Index = Str.ReverseFind('\\');Str = Str.Left(Index);}Str = TEXT("md ")+Str;exceCmd(Str);return TRUE;}return FALSE;}


原创粉丝点击