如何在 C++ 中运行两个可执行文件并分别与它们通信?

问题描述 投票:0回答:1

所以我正在用 C++ 编写一个国际象棋引擎。该引擎使用通用国际象棋接口(UCI)。这意味着我可以通过控制台与它通信。我在控制台中输入一些命令,它会在控制台中做出响应。但为了进一步改进我的引擎,我需要能够对其进行测试。我想让我的引擎与旧版本的引擎进行对抗来实现这一点。所以我想编写一个C++程序,通过运行两个可执行文件来分别运行两个引擎。我需要能够通过单独的“渠道”与他们沟通。这仅意味着我需要能够同时向一个引擎发送命令。

所以我的问题是这是否可能,如果可以的话我该怎么做?

附注我使用的是 x86-64 架构的 Windows 11。 (如果这很重要的话。)

到目前为止我在互联网上没有找到任何有用的东西。

c++ exe executable chess uci
1个回答
0
投票

恐怕您将不得不扩展您的应用程序以使用进程间通信。 在 win32 中有多种方法可以做到这一点。我建议使用管道,有例子。

© www.soinside.com 2019 - 2024. All rights reserved.