自动化DOSbox应用程序

时间:2018-12-18 11:27:42

标签: python bash dos dosbox

我有一个非常旧的DOS应用程序,我想将其自动化。就像有按键一样,如果自动化的话,这将很有帮助,因为我可能需要手动运行该程序一百次以上。

我的问题似乎与这一问题非常相似,但是那里提供的解决方案对我来说并没有太大用处,而且已经存在了9年以上

Automating old DOS application using Python

这个问题和我的问题之间唯一的大区别是我除了DOSbox之外没有其他选择。该应用程序在很多计算机上都已安装,并且所有使用该应用程序的人都知道如何使用DOSBox。迁移到Virtualbox会很痛苦而且很耗时。

我在想也许我可以使用xautomaton或uinput在python中以某种方式机械化它,但是我一直无法弄清楚到底是怎么回事。该应用程序将主要在Ubuntu上运行。

要给出一个应用程序的想法,我附上一个屏幕截图:

Screenshot

解决方案不一定需要使用python。任何其他语言都可以。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:5)

我知道了。尽管它不使用python,但是我只是捕获了DOSbox的windowid,并使用xdotool发送了所有按键。这是一个示例:

wid=$(xdotool search --class DOSbox)
xdotool key --window $wid m t 5 Return Return i

将键入“ mt5”,然后按两次Enter键,然后键入“ i”

一系列按键可以存储在字符串或文件中,并在每次必须运行时迭代调用。如果有更好的方法可以执行此操作,请随时回答。