|
| Récupérer la résultat d'une commande windows |
| Iniciado por Kamel DevSoft, 02,oct. 2020 14:13 - 5 respuestas |
| |
| | | |
|
| |
Miembro registrado 42 mensajes |
|
| Publicado el 02,octubre 2020 - 14:13 |
Bonjour, je souhaite récupérer le résultat d'une commande Windows (CMD) dans mon appli Windev. Comment faire ? Merci à vous |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 948 mensajes |
|
| Publicado el 02,octubre 2020 - 15:02 |
bonjour une méthode parmi d'autre
Procedure ExecuteProgram(pCommande est une chaîne, pArguments = ""):chaîne myDataLine est une chaîne ANSI ScriptProcess est un System.Diagnostics.Process dynamique
myDataLine = "" ScriptProcess = allouer un'system.Diagnostics.process'
ScriptProcess.StartInfo.FileName = pCommande ScriptProcess.StartInfo.Arguments = pArguments ScriptProcess.StartInfo.CreateNoWindow = True ScriptProcess.StartInfo.UseShellExecute = False ScriptProcess.StartInfo.RedirectStandardError = True ScriptProcess.StartInfo.RedirectStandardOutput = True ScriptProcess.StartInfo.RedirectStandardInput = True ScriptProcess.start()
WHEN EXCEPTION IN myDataLine = ScriptProcess.StandardOutput.ReadToEnd() DO ScriptProcess:Close() Libérer(ScriptProcess) myDataLine = "" RENVOYER myDataLine END
IF myDataLine = "" THEN myDataLine = ScriptProcess.StandardError.ReadToEnd() END ScriptProcess.WaitForExit() ScriptProcess:Close() Libérer(ScriptProcess)
RENVOYER myDataLine
-- «Nos clients sont nos meilleurs beta testeur.» H. Mintzberg «Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 42 mensajes |
|
| Publicado el 02,octubre 2020 - 15:57 |
| comment utilisé sa sous windev ? |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 120 mensajes |
|
| Publicado el 02,octubre 2020 - 17:57 |
Bonjour Toute commande windows peut stocker le résultat dans un fichier texte avec le symbole >
Exemple :
Dir *.dll > D:\ListeDLL.txt
Stocke le résultat du DIR dans un fichier sur D:\ et nommé ListeDLL.txt Attention à préciser un chemin complet pour être sur de retrouver ton fichier résultat
Bon weekend Lionel. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 948 mensajes |
|
| Publicado el 02,octubre 2020 - 18:25 |
Bonjour Très simplement en ajoutant l'assemblage .NET SystemSystem, de créer la fonction : ExecuteProgram, de copier/coller le code Exemple d'utilisation :
WinLogNames est une chaîne = ExecuteProgram( "c:\Windows\System32\wevtutil.exe", "el")
-- «Nos clients sont nos meilleurs beta testeur.» H. Mintzberg «Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer |
| |
| |
| | | |
|
| | |
| |
| Publicado el 03,octubre 2020 - 18:06 |
Le 02/10/2020 à 16:25, Philippe Pasquali a écrit :
Bonjour Très simplement en ajoutant l'assemblage .NET SystemSystem, de créer la fonction : ExecuteProgram, de copier/coller le code Exemple d'utilisation : WinLogNames est une chaîne = ExecuteProgram( "c:\Windows\System32\wevtutil.exe", "el") -- «Nos clients sont nos meilleurs beta testeur.» H. Mintzberg «Un programme informatique fait ce que vous lui avez dit de faire, pas ce que vous voulez qu'il fasse» Troisième loi de Greer
Bonjour, J'utilise Windev 12, et j'ai essayé d'utiliser votre procédure. Pour cela, j'ai importé l'assemblage .NET "System" (dans lequel il y a bien System.diagnostics), mais j'ai une erreur de syntaxe à la ligne : ScriptProcess est un system.Diagnostics.Process dynamique (erreur sur le point entre system et Diagnostics) Par ailleurs, sous WD12, les chaines ne peuvent pas être déclarées ANSI. Est-ce que je peux déclarer la chaine simplement comme suit ? : myDataLine est une chaîne //ansi Merci |
| |
| |
| | | |
|
| | | | |
| | |
|