如何在命令行中运行 DOSBox 而不在新窗口中打开它

如何在命令行中运行 DOSBox 而不在新窗口中打开它

如何DOSBox使用默认的windows命令行运行(不在新窗口中打开),编辑的源代码DOSBox是一个解决方案,但我想知道在重建之前是否没有其他解决方案DOSBox

别的

是否有任何其他应用程序可以在其中运行 16 位命令行应用程序CMD

我试过了,DOSBox.exe -nonconsole但这不是我要找的。试过了ScummVMD-Box没有结果。

答案1

我不知道这个答案是否对你有用。至少,我发现可以启动 DOSBox、执行命令并退出它。这使我能够通过 Travis CI 在 DOSBox 上运行自动测试。不过仍然会有一个窗口,并且它不会将退出代码传播给调用者。

命令如下:

dosbox exit -c [your_command_here] >>log.txt" -noconsole -exit

为了使其工作,您必须exit在当前目录中有一个名为的文件(因为exit它最后运行,并且应该是外部命令)。

我用来log.txt从 Dos 程序获取反馈。

据我所知,没有窗口就无法运行 DOSBox。如果它返回其命令 shell 的退出代码就好了。我认为这应该很容易实现,但需要更改源代码。

我还不能点赞,但我确实认为这是一个有用的问题,因为 DOSBox 可用于在 16 位环境中进行测试。从这个意义上讲,这个问题实际上适合 StackOverlow。

答案2

剂量测定可以做到这一点哑模式例如

dosemu -dumb DIR

请注意,现在也有一个不稳定的剂量 MU 2。我不清楚这是延续还是分叉。

答案3

您可以使用 NTVDMx64 来实现此目的http://www.columbia.edu/~em36/ntvdmx64.html

NTVDM 是 NT 虚拟 DOS 机子系统,是 32 位 Windows 版本的一部分。它能够使用 CPU 的 V86 模式运行 16 位 MS-DOS 程序。但是,当 CPU 以 64 位模式运行时,无法使用此模式。但幸运的是,微软有一个使用模拟器而不是 V86 模式的 NTVDM 版本。这个版本已被泄露,上面的链接提供了有关如何使用它的信息。

相关内容