mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-11 17:26:57 +02:00
'ajean where > fichier.txt' n'ecrivait rien dans le fichier et 'ajean help | findstr x' ne transmettait rien : tout partait sur la console. Cause : le binaire etant en sous-systeme GUI, setupConsole reouvrait stdout, stderr et stdin sur CONOUT$/CONIN$ pour avoir ou ecrire. Il ecrasait ce faisant la redirection que le shell avait posee. Le test naif ne suffit pas : AttachConsole REMPLACE lui-meme les handles standard par ceux de la console, donc les interroger apres le rattachement ne montre jamais qu'une console. On releve donc leur type AVANT d'attacher, et on ne reouvre que ceux qui sont reellement inutilisables. Verifie sur un binaire compile comme celui de la release (sous-systeme GUI) : redirection vers un fichier, tube vers findstr, et affichage console inchange.