Trinity_vv
Messages postés26Date d'inscriptionjeudi 6 janvier 2005StatutMembreDernière intervention22 novembre 2005
-
2 févr. 2005 à 14:28
yserver
Messages postés203Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 8 septembre 2006
-
3 févr. 2005 à 11:41
Salut à tous,
Une fois de plus, je mendi votre aide
On me demande de télécharger un fichier ini, en fait de faire un upload exactement, si quelqu'un pouvait me venir en aide, car la je suis vraiment larguée
Trinity_vv
Messages postés26Date d'inscriptionjeudi 6 janvier 2005StatutMembreDernière intervention22 novembre 2005 2 févr. 2005 à 15:11
En fait je veux charger un fichier .ini d'un poste client vers le serveur, et comme je n'ai jamais fait d'upload je panique un peu.
En fait, il me faudrait voir un exemple concret de programme en C sous Linux d'un upload
yserver
Messages postés203Date d'inscriptionlundi 2 août 2004StatutMembreDernière intervention 8 septembre 2006 2 févr. 2005 à 16:07
Voila un exemple
//---------------------------------------------------------------------------
// Fonction pour télécharger des fichiers sur un FTP
// Cette fonction permet de uploader une liste de fichiers sur un FTP
// une fois uploadé le fichier source en local est supprimé
// Accepte autant de fichiers que necessaire en argument
void fUL_FTP( unsigned short f_Nb_Arg , // Nombre de fichier à télécharger
char f_Arg_Server [ 256 ] , // DNS ou IP du serveur ou récupérer les fichiers
char f_Arg_User [ 256 ] , // Nom d'utilisateur pour le FTP
char f_Arg_Pass [ 256 ] , // Mot de passe
char f_Arg_Source [ 256 ] , // Répertoire ou les fichiers sont stockés en local
char f_Arg_Destination [ 256 ] , // Répertoire ou copier les fichiers sur le FTP
... ) // Listes des fichiers à récuperer
{
// Initialisation des macros pour la gestion du nombre variable de fichier
va_list f_Arg_Fichier ; // Définition du pointeur
va_start ( f_Arg_Fichier , f_Arg_Destination ) ; // Initialisation du pointeur sur le premier des arguments
// Les handles
HINTERNET f_hInternetConnexion ; // Handle de la connexion internet
HINTERNET f_hFTPSession ; // Handle de la session FTP
// Ouverture de la connexion internet
f_hInternetConnexion = InternetOpen ( "Seb" , INTERNET_OPEN_TYPE_DIRECT , NULL , NULL , 0 ) ;
// Test si l'operation a reussie et log si l'opération échoue
if ( f_hInternetConnexion == NULL )
{ if ( f_Log_Dl_HTTP == 0 )
{
fError_Msg ( GetLastError (), "fUL_FTP : erreur lors de l'initialisation de la connexion internet\n\n\n" ) ;
}
InternetCloseHandle ( f_hInternetConnexion ) ;
return ;
}
// Ouverture de la session FTP
f_hFTPSession = InternetConnect ( f_hInternetConnexion ,
f_Arg_Server , // Nom du serveur FTP
INTERNET_DEFAULT_FTP_PORT , // Port à utiliser
f_Arg_User , // Nom d'utilisateur
f_Arg_Pass , // Mot de passe
INTERNET_SERVICE_FTP ,
NULL ,
NULL ) ;
// Test si la conenxion au server a rèussie et log si l'opération échoue
if ( ! f_hFTPSession )
{ // Appel de la fonction pour loguer l'erreur ds le fichier log.log
sprintf ( f_Msg_Log , "fUP_FTP : erreur lors de la connexion au server FTP %s\n\n\n" , f_Arg_Server ) ;
fError_Msg ( GetLastError (), f_Msg_Log ) ;
InternetCloseHandle ( f_hFTPSession ) ;
InternetCloseHandle ( f_hInternetConnexion ) ;
return ;
}
DeAtHCrAsH
Messages postés2670Date d'inscriptionvendredi 25 janvier 2002StatutMembreDernière intervention 6 février 2013 2 févr. 2005 à 18:22
Oulalalala pas la peine d'aller aussi loin lol !!!
Si c'est sur un réseau local, et que tu possèdes des droits d'écriture, tu n'as rien de plus a faire qu'à utiliser les fonctions de copie de fichier de la SDL.
Sinon si c'est sur un serveur distant (web par exemple), sur unix sert toi des sockets.
Sans oublier qu'il doit deja existé des classes gérant ca sous Linux.
Shell
Vous n’avez pas trouvé la réponse que vous recherchez ?