我想在c++代码中执行磁盘上的一个bat文件。
这个bat文件的完整路径是:E:\\7z\\my7z.bat。
方法一:
system("E:\\7z\\my7z.bat");
system是C标准库中的函数。
方法二:
WinExec("E:\\7z\\my7z.bat", SW_HIDE);WinExec是 Windows.h 中的函数。方法三:
PROCESS_INFORMATION pi;
STARTUPINFO si;
ZeroMemory(&si, sizeof(si));
si.cb = sizeof(si);
si.hStdInput = GetStdHandle(STD_INPUT_HANDLE);
if (CreateProcess(NULL,
(LPTSTR)cmd,
NULL,
NULL,
FALSE,
CREATE_NO_WINDOW,
NULL,
NULL,
&si, &pi))
{
WaitForSingleObject(pi.hProcess, INFINITE);
CloseHandle(pi.hProcess);
CloseHandle(pi.hThread);
}创建了一个进程来执行bat文件,新进程是一个console窗口。CREATE_NO_WINDOW表示不要显示console窗口。
在C++代码中执行磁盘上bat文件的方法
本文详细介绍了如何在C++代码中执行位于磁盘上的bat文件,包括使用system、WinExec函数及创建进程执行bat文件的方法,并强调了避免显示控制台窗口的重要性。
1566





