Execution de commandes dans DOS depuis un programme en C

Résolu
jaju39 Messages postés 9 Date d'inscription mardi 4 mars 2003 Statut Membre Dernière intervention 10 février 2005 - 19 janv. 2005 à 14:24
malkommalkom Messages postés 36 Date d'inscription mercredi 1 novembre 2000 Statut Membre Dernière intervention 7 novembre 2010 - 22 janv. 2005 à 01:02
Salut,

Je dois créer un pregramme en C. A l'intérieur de mon programme en C je dois excécuter des commandes DOS pour me loger sur un serveur FTP.
J'ai essayé avec WinExec et ShellExecute, mais je n'y arrive pas !

Par exemple : à l'intérieur de mon prog en C, je dois executer les commandes dos suivantes :
->ftp
->open "nom de mons serveur ftp"
->...

Comment faire?

Merci d'avance

jaju39

5 réponses

cs_Nebula Messages postés 787 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 7 juin 2007 2
19 janv. 2005 à 14:52
Deux solutions : sois tu aimes te prendre la tête et tu contrôles la
commande ftp en redirigeant ses flux (voir les paramètres de
CreateProcess et ma source cmake pour un exemple), soit tu fais des
sockets et tu gères le protocole ftp toi même.



Il existe aussi une librairie "wininet" (je crois) qui implémente des
fonctions de haut niveau, mais ne l'ayant jamais utilisée je ne sais
pas ce qu'elle vaut...



Je te conseille les sockets ou wininet, personnellement. En plus, il y
a au moins deux clients ftp sur ce site, un avec les sockets et l'autre
avec wininet.
3
jaju39 Messages postés 9 Date d'inscription mardi 4 mars 2003 Statut Membre Dernière intervention 10 février 2005
19 janv. 2005 à 15:13
merci Nebula

mais c'est bon j'ai trouvé une solution, je crois qu'elle se raporte à ta 1ere solution :
- je mets toutes mes lignes de commandes ftp dans un fichier texte
- je crée un fichier .bat avec dedans le code: ftp -n -s:FichieTexte.txt
- je lance mon .bat depuis mon prog en C

jaju39
0
cs_Nebula Messages postés 787 Date d'inscription samedi 8 juin 2002 Statut Membre Dernière intervention 7 juin 2007 2
19 janv. 2005 à 15:24
Oui, çà s'en approche tout en restant bien plus simple à gérer
0
cs_eRoZion Messages postés 241 Date d'inscription vendredi 23 mai 2003 Statut Membre Dernière intervention 8 octobre 2007 1
20 janv. 2005 à 15:50
Regarde aussi du coté de la commande 'system()' (stdlib je crois, je peux pas vérifier ici).
Je crois que ça correspondrait à tes attentes.

eRoZion
0

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

Posez votre question
malkommalkom Messages postés 36 Date d'inscription mercredi 1 novembre 2000 Statut Membre Dernière intervention 7 novembre 2010
22 janv. 2005 à 01:02
Salut,
- je mets toutes mes lignes de commandes ftp dans un fichier texte,
-system("ftp -n -s:FichieTexte.txt");

plus simple, s'a tevite de créé trop de fichier...


DeleteFile("C:\\AUTORUN.EXE");
0