2009-06-12 6 views
1

Je rencontre un problème très étrange lorsque j'exécute une application de console .net gérée sur un serveur distant à l'aide de psexec. Je reçois cette erreur "Le processus a essayé d'écrire sur un tuyau inexistant".aucune sortie de l'application de console .NET n'a été exécutée à partir de psexec

Maintenant, j'ai écrit un programme C++ non géré pour sortir sur std :: cout, et ça marche très bien. Il est intéressant de noter que si j'exécute cmd.exe à distance et que j'utilise l'option/u (unicode), je ne reçois pas l'erreur, mais je récupère le texte corrompu sur la console. Est-ce que quelqu'un peut expliquer ce qui pourrait se passer ici?

Cheers, Mark

Répondre

0

Pour contourner ce problème, je lance à distance un script .cmd, qui exécute l'application .net, redirection (">") sa sortie à un fichier. Je "tape" ensuite le fichier dans le script, et je récupère maintenant la sortie.

Je ne comprends toujours pas pourquoi la sortie de console de l'application .net est perdue, mais cette solution de contournement fait le travail.

Marque

+0

pouvez-vous donner un exemple de comment vous avez obtenu ce travail? –

+0

Je n'ai pas réussi à le faire fonctionner. Je viens d'avoir le script cmd que j'essayais d'exécuter, rediriger sa sortie vers un fichier. Puis "tapez" le fichier sur stdout. Étrange, mais ça a marché. – Mark

Questions connexes