我有一个TF2服务器,如果被TF2我不在的时候更新,服务器将输出:读程序输出C++
你的服务器是过时的。请更新并重新启动。
我怎样才能用C++观察/读取输出?
的理念是:
1. if (output == "Your server is out of date. Please update and restart.")
2. kill the application
3. run update.bat
4. start observing again
是我的想法可能吗?
这是否必须用C++来完成?这看起来像是使用shell /批处理脚本可以更容易完成的事情。我建议在服务器启动时将服务器输出重定向到某个文件,然后编写一个脚本读取该文件并查找更新消息,然后删除该文件,运行update.bat,并在发现服务器时重新启动服务器更新消息。如果你愿意的话,你当然可以用C++做类似的事情。 – aroth
你真的需要杀死服务器吗?你不能只在服务器中运行update.bat并继续观察吗? – StevieG
一个shell脚本听起来就像是一个不那么痛苦的方式来处理这个问题,尤其是因为它允许你轻松地捕获正在运行的进程的PID,并且可以立即访问诸如“kill”之类的进程信号工具。 –