Bagaimana untuk Menghalang Windows Baris Perintah daripada Muncul Apabila Menggunakan `exec.Command` dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-11-28 02:22:15
asal
308 orang telah melayarinya

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

Menghalang Tetingkap Baris Perintah daripada Muncul Apabila Menggunakan Exec di Golang

In Go, menggunakan exec.Command untuk menghasilkan proses baharu kadangkala boleh menyebabkan tetingkap baris arahan kelihatan untuk dipaparkan. Isu ini berterusan walaupun apabila memanfaatkan syscall.SysProcAttr.HideWindow untuk menyekat tetingkap.

Penyelesaian:

Terdapat pendekatan alternatif untuk melaksanakan arahan tanpa menghasilkan tetingkap yang boleh dilihat. Penyelesaian ini melibatkan penggunaan utiliti cmd.exe untuk melaksanakan arahan yang dikehendaki.

Sampel Kod:

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()
}
Salin selepas log masuk

Sumber:

Penyelesaian asal boleh didapati di sini: https://www.reddit.com/r/golang/comments/2c1g3x/build_golang_app_reverse_shell_to_run_in_windows/

Atas ialah kandungan terperinci Bagaimana untuk Menghalang Windows Baris Perintah daripada Muncul Apabila Menggunakan `exec.Command` dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan