gpt4 book ai didi

c++ - 在 C++ 中同时运行具有不同参数的相同 exe

转载 作者:太空宇宙 更新时间:2023-11-04 13:50:15 27 4
gpt4 key购买 nike

有没有人知道在 C++ 中同时打开具有不同参数的同一个 exe 文件。
以前,我总是在windows中打开多个命令行来同时运行exe,
但是,这似乎不是解决它的最佳方法。因此,我尝试在 C++ 中实现它以同时自动运行多个处理。
我试过this , 但它仍然无法工作....
我的问题:
例如跑
1. a.exe -dir D: -num 1000
2. a.exe -dir D: -num 1500
3. a.exe -dir D: -num 2500
同时在 C++ 中。

最佳答案

(由编辑中的 OP 回答。参见 Question with no answers, but issue solved in the comments (or extended in chat))

OP 解决方案是:

Sol:

std::ostringstream trainsamplesCmd[2];
trainsamplesCmd[0] << "a.exe -data cascade/1 -vec vec/test.vec -bg neg.txt -numPos 1000 -numNeg 1000 -w 30 -h 14";
trainsamplesCmd[1] << "a.exe -data cascade/2 -vec vec/test.vec -bg neg.txt -numPos 1500 -numNeg 1000 -w 30 -h 14";
for(int i = 0; i < 2; i++) {
STARTUPINFO si;
PROCESS_INFORMATION pi;

ZeroMemory( &si, sizeof(si) );
si.cb = sizeof(si);
ZeroMemory( &pi, sizeof(pi) );
if( !CreateProcess( NULL, // No module name (use command line)
const_cast<char *>(trainsamplesCmd[i].str().c_str()), // Command line
NULL, // Process handle not inheritable
NULL, // Thread handle not inheritable
FALSE, // Set handle inheritance to FALSE
0, // No creation flags
NULL, // Use parent's environment block
NULL, // Use parent's starting directory
&si, // Pointer to STARTUPINFO structure
&pi ) // Pointer to PROCESS_INFORMATION structure
)
{
printf( "CreateProcess failed (%d).\n", GetLastError() );
system("pause");
return 0;
}
}

关于c++ - 在 C++ 中同时运行具有不同参数的相同 exe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23719769/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com