【问题标题】:Hide Command Line when running a Ruby Program运行 Ruby 程序时隐藏命令行
【发布时间】:2015-12-16 01:13:26
【问题描述】:

我最近完成了我的 AP Computer Science AB Final 游戏(如果您了解 GIT 和 Git Bash 并安装了 ruby​​,您可以在此处克隆游戏:https://github.com/gerberhe/Final_Game)。

我创建了一个名为“Final Game”的快捷方式,当我双击它时,它会运行我的游戏。这适用于我用来执行此操作的代码,它会在 Gosu 窗口中打开我的游戏。

但是,双击/运行此快捷方式文件还会打开一个空白的命令提示符/cmd 窗口,该窗口什么也不做,什么也不显示,并且在我关闭游戏后立即关闭。

问题是,是否有任何代码或任何方法可以使我在运行此快捷方式文件时出现游戏,但同时打开的 cmd 行是隐藏的,或者只是没有打开?

这不是必需的,但会使游戏看起来更专业和美观。谢谢!

另外,如果您决定尝试这款游戏,请注意目前我正计划修复它的一些错误,但这对于游戏的流畅性和工作能力来说不是必需的。

再次感谢!

【问题讨论】:

  • 我猜这是 Windows 问题,而不是 Ruby 或编程问题。 OP 没有透露平台,但这是 Windows 的典型特征,也是常见的常见问题解答。

标签: ruby git bash


【解决方案1】:

我在剖析 .lnk 文件时遇到问题,但我相信您可以通过运行在命令行中模拟您想要的内容

ruby main.rb &

而不是ruby main.rb。一旦你有了它,我认为你可以使用上面的行创建一个 .bat 文件,它应该正确运行。

解释: 命令提示符运行的常见原因是因为命令提示符实际上是在其自身内部运行游戏并在完成“运行游戏”脚本之前等待您完成。 & 表示“在此命令提示符之外(在新线程内)运行游戏”。然后在创建新线程后,它会看到它已完成脚本的执行并自行关闭,让您的游戏自行运行。

【讨论】:

  • 那么,我将如何在代码中执行此操作?基本上,当有人双击快捷方式时,它会运行 main.rb 就是它所做的一切,使游戏运行。
  • 不要创建快捷方式,而是创建一个包含ruby main.rb & 的bat 脚本作为其中的唯一行。如果需要,可以创建该 bat 脚本的快捷方式。如果您对 bat 脚本非常陌生,只需制作一个文本文件,将上述行放入文件中,然后将文件重命名为 run.bat
  • 糟糕,我忘了提到@Harrison。请参阅我上面的评论。如果有帮助,我可以将其编辑为答案。
【解决方案2】:

您可以尝试在您的主要功能中/周围分叉。 这样,它的进程将完成并释放 shell,但新的分叉进程将继续,直到从 GUI 中终止。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-04
    • 2016-08-04
    • 1970-01-01
    • 2011-08-28
    • 2015-12-06
    相关资源
    最近更新 更多