如何在 C++ 中使用一个 system() 函数 运行 2 个命令

how to run 2 commands using one system() function in c++

我想在一个系统 () 函数 c++ 中执行 2 个 cmd 命令,但一个 cmd 命令作为串联传递:

private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {

            System::String^ managedString = textBox1->Text; 

             msclr::interop::marshal_context context;
    std::string standardString = context.marshal_as<std::string>(managedString);

    std::string s2 = "yara64 -r test.yara " + standardString;

    system(s2.c_str() && "pause");

}

此代码无效。这仅在我删除 "pause" 命令时有效。 "pause"命令在一个系统中如何精确执行()?

请帮帮我。非常感谢!

将“&&”部分作为字符串本身。

std::string s2 = "yara64 -r test.yara " + standardString + "&& pause";
system(s2.c_str());

“&& pause”应该是字符串的一部分,所以它应该如下所示:

std::string s2 = "yara64 -r test.yara " + standardString + "&& pause";

system(s2.c_str());