Récupérer texte ms-dos avec shell

retsam Messages postés 40 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 23 mars 2007 - 20 mars 2007 à 23:23
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 - 23 mars 2007 à 00:25
Salut, je voudrais récupérer le texte d'un application avec la command shell en vb.
Voici ce que je veux faire en vb: Shell (App.Path & "\ftp.exe > recup.txt") car je veux faire une cmd semblable au .bat
La cmd en .bat:  ftp.exe > recup.txt
Mon but c'est d'enregistrer le texte fait par mon prog (autre que ftp.exe) tou au long de son exécution.

Merci de vos réponses. Si vous avez besoin d'éclaircissements là-dessus dit-le moi.

9 réponses

PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
21 mars 2007 à 08:10
salut,
avec "ton_exe.exe >destination", la fonction command$ de ton exe te retournera " >destination".
à toi de traiter ton prog de manière à enregistrer les sorties selon cette commande
++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
retsam Messages postés 40 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 23 mars 2007
21 mars 2007 à 23:46
Bonjour PCPT,
j'ai un quelques difficultés à comprendre qu'es ce que la fonction command$ et pourquoi il retournera " >destination" au lieu d'être le fichier qui aura enregistré les sorties de mon .exe.

Pourrais-tu faire un exemple simple? SVP  Merci beaucoup
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
22 mars 2007 à 01:07
j'ai été un peu vite...

ton prog ne donne pas de sortie accessible par dos

tu appeleras donc
C:/>Projet1.exe C:\MonLog.Txt

et voici le code de projet1
Option Explicit
Private Sub Form_Load()
    MsgBox "j'écrirai mes data dans '" & Command$ & "'"
    Unload Me
End Sub

++
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
retsam Messages postés 40 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 23 mars 2007
22 mars 2007 à 01:28
REbonjour
DSL je n'y comprend rien......
 tu es en train de me dire que c'est impossible? et
je ne comprend toujours pas l'utilité de command$ et
Private Sub Form_Load()
    MsgBox "j'écrirai mes data dans '" & Command$ & "'"
    Unload Me
End Sub

Je suis débutant et j'apprens par moment en vb6 donc je ne suis pas très bon.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
22 mars 2007 à 01:44
essaye le code...
si çà ne te convient pas, j'aurais besoin d'éclaircissements ^^

<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
0
retsam Messages postés 40 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 23 mars 2007
22 mars 2007 à 02:35
Rebonjour et merci de ta patience,
Le problème c'est que je suis nul....
-------------------------------------------------
ton prog ne donne pas de sortie accessible par dos tu appeleras donc
C:/>Projet1.exe C:\MonLog.Txt
-------------------------------------
j'apelerez quoi C:/>Projet1.exe C:\MonLog.Txt ?

-------------------------------------
    MsgBox "j'écrirai mes data dans '" & Command$ & "'"
    Unload Me
-------------------------------------
-pourquoi un msg box?
-que vais-je écrire... (j'écrirai mes data dans ') quel data?
-puis (& Command$ & "'") à quoi sert d'ajouter ce bout de code à la fin...?
-Command& --> mais qu'es ce que c'est? À quoi ca sert et comment l'utiliser...

Je ne sais pas si tu as bien compris ce que je voulais dire au début ou alors c'est moi qui compredn rien. ^
Au format .bat lorsque j'écris un bout de code comme ca
-----------------------------
echo off
cls
ftp.exe > récupdesdonnésauformattxt.txt
-----------------------------
le simbole >, crée mon fichier (récupdesdonnésauformattxt.txt) et inscrit tout ce qui est lisible, dans la console dos, de ftp.exe dans mon fichier .txt

Il y a beaucoup de chance que j'explique mal mais je ne sais plus vraiment comment l'expliquer...J'en suis sur,tu es beaucoup plus avancé que moi dans le sujet alors bonne chance...
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
22 mars 2007 à 07:30
ok on la refait.
voici ce que j'avais compris au départ (et qui est sans doute totalement différent de ce que tuu veux) :

tu fais un batch.
s'il lance un ping par exemple, tu sais récupérer le retour (les data) dans un fichier texte.
avec executer -> cmd ->
ping 127.0.0.1 > c:\monlog.txt
idem dans le batch

même principe pour ftp
ftp.exe > c:\monlog.txt

ton topic classé dans la catégorie VB6, tu voudrais (... peut-être pas en fait) que ton exe soit traité par DOS de la même manière.
C:/>Projet1.exe C:\MonLog.Txt
(le C:/> ne servant qu'à te montrer que je parlais bien d'une console DOS)

comme tu le vois, il n'y a plus le spash entre le chamin de l'exe et la destination du chemin de sortie

c'est l'exe lancé (par le batch, par cmd, ou par la commande shell d'un autre exe VB) qui reconnait le reste des arguments
en l'occurence, le C:\MonLog.Txt est récupérer dans une variable d'environnement de VB6.
cette variable s'appelle Command$ et n'a pas besoin d'être déclarée.
l'exemple de code te montre comment récupérer cette variable, d'où la simple utilisation de msgbox.

connaissant ce chemin au démarrage, le but est évidemment d'utiliser ce fichier (donc de le créer etc...) tout au long de la durée d'utilisation.

j'espère avoir été plus clair.
vu qu'apparemment je suis à côté de la plaque, n'hésite pas à reformuler ;)
++
PCPT  [AFCK]
0
retsam Messages postés 40 Date d'inscription samedi 21 février 2004 Statut Membre Dernière intervention 23 mars 2007
23 mars 2007 à 00:10
DSL j'ai besoin d'un exemple a-z avec la source..... qui m'explique ton idée.
Vraiment désolé... mais sinon laisse faire, je vais arrêté ça là.

Merci quand même pour tout : )

A++
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
23 mars 2007 à 00:25
l'exemple, c'est mon 2e post...
0
Rejoignez-nous