2024-04-18 23:20:18 发布
网友
我正在制作自己的象棋GUI,并使用python象棋和stockfish。将其冻结为可执行文件后,每次我调用chess.engine.SimpleEngine.popen_uci('location\\of\\stockfish'),它都会为stockfish打开shell,如果我关闭shell,stockfish将停止工作。我该怎么做才能使shell只在后台运行,并且用户看不到它
chess.engine.SimpleEngine.popen_uci('location\\of\\stockfish')
在@BoarGules上展开回答:
engine = chess.engine.SimpleEngine.popen_uci(sf,startupinfo = subprocess.STARTUPINFO(dwFlags=subprocess.STARTF_USESHOWWINDOW))
这是一个特定于平台的问题,我从'location\\of\\stockfish'猜测Windows是您感兴趣的平台
'location\\of\\stockfish'
popen_uci接受**(额外关键字)参数,您可以使用该参数将参数传递给subprocess.Popen()。使用passthrough参数startupinfo提供subprocess.STARTUPINFO的实例。这反过来又可以设置win32标志wShowWindow来执行您想要的操作
popen_uci
subprocess.Popen()
startupinfo
subprocess.STARTUPINFO
wShowWindow
在@BoarGules上展开回答:
这是一个特定于平台的问题,我从
'location\\of\\stockfish'
猜测Windows是您感兴趣的平台popen_uci
接受**(额外关键字)参数,您可以使用该参数将参数传递给subprocess.Popen()
。使用passthrough参数startupinfo
提供subprocess.STARTUPINFO
的实例。这反过来又可以设置win32标志wShowWindow
来执行您想要的操作相关问题 更多 >
编程相关推荐