首頁 > 後端開發 > Golang > 主體

在 Go 中使用 exec.Command 時如何防止出現命令列視窗?

Mary-Kate Olsen
發布: 2024-11-28 02:22:15
原創
308 人瀏覽過

How to Prevent Command Line Windows from Appearing When Using `exec.Command` in Go?

在Golang 中使用Exec 時防止出現命令列視窗

在Go 中,使用exec.Command 產生新進程有時會導致出現可見的命令列視窗。即使利用 syscall.SysProcAttr.HideWindow 抑制窗口,此問題仍然存在。

解決方案:

存在另一種方法來執行命令而不產生可見視窗。此解決方案涉及使用 cmd.exe 實用程式執行所需的命令。

程式碼範例:

import "syscall"

// Use cmd.exe to execute commands without spawning a visible window
func main() {
    cmd_path := "C:\Windows\system32\cmd.exe"
    cmd_instance := exec.Command(cmd_path, "/c", "notepad")
    cmd_instance.SysProcAttr = &syscall.SysProcAttr{HideWindow: true}
    cmd_output, err := cmd_instance.Output()
}
登入後複製

來源:

原始解決方案可以在這裡找到: https://www.reddit.com/r/golang/comments/2c1g3x/build_golang_app_reverse_shell_to_run_in_windows/

以上是在 Go 中使用 exec.Command 時如何防止出現命令列視窗?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板