Maison > développement back-end > Golang > Comment masquer les fenêtres d'invite de commande lors de l'utilisation de « exec.Command » dans Go ?

Comment masquer les fenêtres d'invite de commande lors de l'utilisation de « exec.Command » dans Go ?

Mary-Kate Olsen
Libérer: 2024-11-30 01:25:12
original
972 Les gens l'ont consulté

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

Comment masquer les fenêtres d'invite de commande avec Exec

Dans Go, lorsque vous utilisez un appel système pour masquer les fenêtres de ligne de commande à l'aide de exec.Command(name, args...), certains utilisateurs rencontrent un problème persistant : la fenêtre réapparaît après compilation dans les environnements Windows.

Cette question cherche à découvrir une solution pour empêcher la fenêtre de ligne de commande de se matérialiser. Alors que la technique de compilation des sources Go dans les exécutables de l'interface graphique Windows à l'aide de go build -ldflags -H=windowsgui supprime efficacement la fenêtre de lancement du programme lui-même, Exec continue de produire des fenêtres visibles.

Solution :

Il existe une solution supérieure qui permet à exec.Command() de s'exécuter sans afficher de message visible. window.

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()
Copier après la connexion

Ce code importe l'appel système et attribue le chemin de commande, les arguments et l'attribut HideWindow à l'objet cmd_instance. Par la suite, il exécute la commande et stocke la sortie dans cmd_output.

Cette approche dissimule avec succès les fenêtres de ligne de commande tout en utilisant exec.Command() dans Go, répondant ainsi efficacement à la requête initiale.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal