为了账号安全,请及时绑定邮箱和手机立即绑定

在golang中,如何在程序完成后保持控制台窗口打开,通过双击启动exe

在golang中,如何在程序完成后保持控制台窗口打开,通过双击启动exe

Go
红颜莎娜 2022-01-10 10:58:26
在windows中,当双击.exe启动时,当程序由os.Exit(...)完成时,是否有保持控制台窗口打开,就像自动运行cmd命令一样。我不想要一些 PAUSE 或其他东西的解决方案让它等待关闭。我需要完成退出程序,并保留控制台窗口。顺便说一句,我想以某种方式打开另一个控制台窗口,但此代码失败c :=exec.Command("start")    if err := c.Run(); err != nil {        fmt.Println("Error: ", err)    }    os.Exit(0)
查看完整描述

3 回答

?
qq_花开花谢_0

TA贡献1835条经验 获得超7个赞

你可以打电话fmt.Scanf()。我知道这是 hack,你不想在生产应用程序中这样做,但它可以工作。


package main


import "fmt"


func main() {

    fmt.Printf("hello, world\n")

    fmt.Scanf("h")

}


查看完整回答
反对 回复 2022-01-10
?
陪伴而非守候

TA贡献1757条经验 获得超8个赞

如果您需要程序完全退出,但保持窗口打开,请从控制台运行程序。

  1. win+r

  2. 类型 cmd

  3. 进入

  4. 导航到您拥有二进制cd myFolder文件的文件夹,使用移动到文件夹,然后cd ..向上移动一个文件夹

  5. 通过键入./myBinary.exe并按 enter运行二进制文件

  6. 二进制完成运行,并且控制台保持打开状态。

编辑:
为了能够双击,在批处理文件中使用暂停是最简单的解决方案:

启动.bat

./myBinary.exe
pause

保存在与二进制相同的文件夹中,然后双击运行。

如果您真的愿意,您可以使用您选择的语言编写一个程序,该程序与该批处理文件执行相同的操作。


查看完整回答
反对 回复 2022-01-10
?
哆啦的时光机

TA贡献1779条经验 获得超6个赞

顺便说一句,我想以某种方式打开另一个控制台窗口,但此代码失败

如果您使用cmd.exe处理器使用/k选项运行your_executable.exe,它应该运行可执行文件并保持控制台打开。

cmd.exe /k your_executable.exe


查看完整回答
反对 回复 2022-01-10
  • 3 回答
  • 0 关注
  • 1022 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信