Rumah > pembangunan bahagian belakang > Golang > Bagaimana untuk Menyembunyikan Windows Prompt Perintah Apabila Menggunakan `exec.Command` dalam Go?

Bagaimana untuk Menyembunyikan Windows Prompt Perintah Apabila Menggunakan `exec.Command` dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-11-30 01:25:12
asal
871 orang telah melayarinya

How to Hide Command Prompt Windows When Using `exec.Command` in Go?

Cara Menyembunyikan Windows Prompt Perintah dengan Exec

In Go, apabila menggunakan syscall untuk mengaburkan tetingkap baris arahan menggunakan exec.Command(nama, args...), pengguna tertentu menghadapi masalah yang berlarutan: tetingkap muncul semula selepas penyusunan dalam persekitaran Windows.

Soalan ini bertujuan untuk mendedahkan penyelesaian untuk menghalang tetingkap baris arahan daripada menjadi kenyataan. Walaupun teknik penyusunan sumber Go ke dalam Windows GUI boleh laku menggunakan go build -ldflags -H=windowsgui secara berkesan menyekat tetingkap pelancaran untuk program itu sendiri, Exec terus menghasilkan tingkap yang boleh dilihat.

Penyelesaian:

Ujud penyelesaian unggul yang memberi kuasa kepada exec.Command() untuk melaksanakan tanpa memaparkan tetingkap kelihatan.

import syscall

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

Kod ini mengimport syscall dan memberikan laluan arahan, argumen dan atribut HideWindow kepada objek cmd_instance. Selepas itu, ia melaksanakan arahan dan menyimpan output dalam cmd_output.

Pendekatan ini berjaya menyembunyikan tetingkap baris arahan semasa menggunakan exec.Command() dalam Go, menangani pertanyaan awal dengan berkesan.

Atas ialah kandungan terperinci Bagaimana untuk Menyembunyikan Windows Prompt Perintah 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