Empêcher l'apparition de la fenêtre de ligne de commande lors de l'utilisation d'Exec dans Golang
Dans Go, l'utilisation de exec.Command pour générer de nouveaux processus peut parfois provoquer un fenêtre de ligne de commande visible pour apparaître. Ce problème persiste même lorsque vous utilisez syscall.SysProcAttr.HideWindow pour supprimer la fenêtre.
Solution :
Il existe une approche alternative pour exécuter des commandes sans générer de fenêtre visible. Cette solution consiste à utiliser l'utilitaire cmd.exe pour exécuter la commande souhaitée.
Exemple de code :
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() }
Source :
La solution originale se trouve ici : https://www.reddit.com/r/golang/comments/2c1g3x/build_golang_app_reverse_shell_to_run_in_windows/
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!