Maison > développement back-end > Golang > Comment découpler un processus Go de la fenêtre de commande et masquer la fenêtre de la console sous Windows ?

Comment découpler un processus Go de la fenêtre de commande et masquer la fenêtre de la console sous Windows ?

DDD
Libérer: 2024-11-03 17:10:29
original
804 Les gens l'ont consulté

How to Decouple a Go Process from the Command Window and Hide the Console Window in Windows?

Découplage d'un processus de la fenêtre de commande

Dans Go, vous pouvez créer un processus enfant en utilisant os.StartProcess(). Cependant, par défaut, ce processus reste connecté à la fenêtre de commande parent. Pour découpler le processus et l'exécuter en arrière-plan, vous devez modifier ses attributs.

Dans votre code, vous avez configuré la structure procAttr pour rediriger les descripteurs de fichiers du processus enfant. Cependant, il semble que vous ayez omis le paramètre nécessaire pour masquer la fenêtre de la console pour les systèmes Windows.

Pour masquer la fenêtre de la console, ajoutez la ligne suivante au membre procAttr.Sys :

procAttr.Sys.HideWindow = true
Copier après la connexion

Cependant, vous avez mentionné que cela entraîne une erreur « panique vers un mauvais pointeur de mémoire ». Cela est probablement dû à un autre problème dans votre code qui n'est pas lié au découplage du processus.

Pour compiler votre programme sans créer de lien vers le sous-système de l'interface graphique Windows et en désactivant la création de la fenêtre de console, utilisez la commande suivante :

go tool 8l -o output.exe -Hwindowsgui input.8
Copier après la connexion

Cela générera un exécutable qui pourra être exécuté en arrière-plan sans fenêtre de console.

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!

source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal