|
FORUMS PROFESSIONNELS WINDEV, WEBDEV et WINDEV Mobile |
| | | | | |
| stderr et stdout depuis une application Windows |
| Débuté par Cyril, 28 nov. 2017 11:38 - 1 réponse |
| |
| | | |
|
| |
Membre enregistré 30 messages |
|
| Posté le 28 novembre 2017 - 11:38 |
Bonjour à tous,
Nous utilisons un task manager pour lancer des exécutables sous windows et aurion besoin d'utilser la variable de retour "stderr" pour récupérer des informations de plantage et "stdout" quand tout est OK.
Mais après avoir longtemps cherché, je n'ai pas trouvé comment renvoyer ses informations. Il y a bien la fonction "dbgSortieStandard" mais elle ne fonctionne qu'en appli LINUX.
Avez-vous une idée svp ??
Énorme merci d'avance.
Cyril. |
| |
| |
| | | |
|
| | |
| |
Membre enregistré 948 messages |
|
| Posté le 28 novembre 2017 - 13:18 |
Bonjour, Je ne suis pas sur que ce code puisse vous aider. Il permet de lancer un programme et de récupérer les flux stderr et stdout directement dans le programme Windev. Utilise l'assemblage .NET : System
myDataLine, myError est une chaîne ANSI ScriptProcess est un System.Diagnostics.Process dynamique
myDataLine = "" myError = "" ScriptProcess = allouer un 'system.Diagnostics.process'
ScriptProcess.StartInfo.FileName = "C:\Program Files\PuTTY\bf.cmd"
ScriptProcess.StartInfo.Arguments = "" ScriptProcess.StartInfo.CreateNoWindow = True ScriptProcess.StartInfo.UseShellExecute = False ScriptProcess.StartInfo.RedirectStandardError = True ScriptProcess.StartInfo.RedirectStandardOutput = True ScriptProcess.StartInfo.RedirectStandardInput = True ScriptProcess.start()
myDataLine = ScriptProcess.StandardOutput.ReadToEnd() IF myDataLine = "" THEN myError = ScriptProcess.StandardError.ReadToEnd() END ScriptProcess.WaitForExit() ScriptProcess:Close() Libérer ScriptProcess
Trace(Remplace(myDataLine, Caract(0x0a), ""))
|
| |
| |
| | | |
|
| | | | |
| | |
| | |
| |
|
|
|