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

在windows中,当双击.exe启动时,当程序由os.Exit(...)完成时,是否有保持控制台窗口打开,就像自动运行cmd命令一样。我不想要一些 PAUSE 或其他东西的解决方案让它等待关闭。我需要完成退出程序,并保留控制台窗口。


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


c :=exec.Command("start")


    if err := c.Run(); err != nil {

        fmt.Println("Error: ", err)

    }

    os.Exit(0)


红颜莎娜
浏览 1024回答 3
3回答

qq_花开花谢_0

你可以打电话fmt.Scanf()。我知道这是 hack,你不想在生产应用程序中这样做,但它可以工作。package mainimport "fmt"func main() {    fmt.Printf("hello, world\n")    fmt.Scanf("h")}

陪伴而非守候

如果您需要程序完全退出,但保持窗口打开,请从控制台运行程序。win+r类型 cmd进入导航到您拥有二进制cd myFolder文件的文件夹,使用移动到文件夹,然后cd ..向上移动一个文件夹通过键入./myBinary.exe并按 enter运行二进制文件二进制完成运行,并且控制台保持打开状态。编辑:为了能够双击,在批处理文件中使用暂停是最简单的解决方案:启动.bat./myBinary.exe pause保存在与二进制相同的文件夹中,然后双击运行。如果您真的愿意,您可以使用您选择的语言编写一个程序,该程序与该批处理文件执行相同的操作。

哆啦的时光机

顺便说一句,我想以某种方式打开另一个控制台窗口,但此代码失败如果您使用cmd.exe处理器使用/k选项运行your_executable.exe,它应该运行可执行文件并保持控制台打开。cmd.exe /k your_executable.exe
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go