在 Golang for Windows 中启动单独的命令窗口
在依赖命令窗口 (CMD) 进行用户交互的 Golang 应用程序中,它可能需要使用自己的专用命令窗口生成应用程序的其他实例。虽然 os/exec 包最初是一个合适的选择,但当尝试在单独的窗口中启动非 GUI 应用程序时,它会显得不足。
克服挑战
成功在不同的命令窗口中启动非 GUI 应用程序,必须采用特定的命令语法。这涉及在 cmd /c 调用之后附加启动命令。其实现方式如下:
<code class="go">package main import ( "exec" "fmt" ) func main() { _path_to_executable_ := "C:\path\to\my_application.exe" // Create the command to start the application with a new window cmd := exec.Command("cmd", "/C", "start", _path_to_executable_) // Execute the command err := cmd.Start() if err != nil { fmt.Println(err) } }</code>
通过合并此修改后的命令结构,Golang 应用程序可以在单独的命令窗口中成功启动其自身的其他实例,每个实例都有自己的 stdin 和 stdout。
以上是如何在 Windows 上使用 Golang 在单独的命令窗口中启动非 GUI 应用程序?的详细内容。更多信息请关注PHP中文网其他相关文章!