bonjour,
je vien de developpez un client et un serveur (en C), et je voudrai savoir si une fois connecter a mon serveur il existe une commande pour copier des fichier directement sur la machine serveur.
merci
Version imprimable
bonjour,
je vien de developpez un client et un serveur (en C), et je voudrai savoir si une fois connecter a mon serveur il existe une commande pour copier des fichier directement sur la machine serveur.
merci
Rien à ma connaissance en POSIX. Tu dois faire la copie à la main.
qu'es ce que tu entend par "a la main" : je prend ma clef et je me balade d'une machine a l'autre
Ca veut dire que tu dois écrire le code de copie de fichier.
C'est un serveur ftp ?
non c'est un serveur web.
Alors il faut étudier HTTP et voir quelles sont les commandes de transfert de fichier coté client et les implémenter.Citation:
Envoyé par krushnik
Oui, et après avoir déterminé quoi faire (par le protocole), il faudra savoir comment: si noyau linux l' appel systeme 187 remplira vite son rôle en serveur, ou client.
On ne parle pas souvent de cet appel systeme... L'avantage étant qu'il ne copie pas les buffers entre l' espace noyau et utilisateur, d'ou sa rapidité.
http://linuxgazette.net/issue91/tranter.html
Ceci dit rien n'empêche de le faire à la main, en une vingtaine de lignes de code!
Bon courage, tu peux poster ta source même si elle fonctionne.
Merci les gars, je vous post le source des que je l'ai terminé ou si je n'y arrive pas ;)
Bien sûr.
Bonsoir et désolé encore:oops: ,
Juste une petite question moi j'ai fait un code qui permettrai de copier un fichier vers C:/ mais je n'arrive pas à trouver comment faire pour tant j'ai cherché sur les forums, tutoriel, livres mais rien!! SVP aidez moi voici mon code :
#include <stdio.h>
#include <stdlib.h>
/* tout d'abord pour copier le dossier je vais tout simplement tester si j'ai
insrit le bon emplacement du fichier. La solution la plus simple pour vérifier
si un fichier existe, c'est d'essayer de l'ouvrir. */
void testfichier()
{
printf( "Verification de l'emplacement d'origine :");
//inscrivez l'emplacement principal du dossier
FILE *fp = fopen ("C:\\Documents and Settings\\l.martin.DOMCCGA\\Mes documents\\essaiC.txt", "r");
if (fp == NULL)
{
printf("l'emplacement du fichier n'est pas bien indique\n\n\n");
/* fichier inexistant */
}
else
{
printf("ok\n\n\n");
/* fichier existant */
}
fclose(fp);
}
// ensuite je vais donc copier ce fichier à un endroit choisit
void copie1()
{
int src;
int dest;
FILE *fp ;
("C:\\Documents and Settings\\X\\Mes documents\\essaiC.txt",=,"C:\\Documents and Settings\\X\\Bureau"); /* Nom du fichier source */ /* Nom du fichier destination */
}
void verifcopie1()
{
FILE *fp = fopen ("C:\\Documents and Settings\\l.martin.DOMCCGA\\Bureau", "r");
if (fp == NULL)
{
printf("la copie a echoue\n\n");
/* fichier inexistant */
}
else
{
/* fichier existant */
printf ("le fichier a bien ete copie\n\n");
}
fclose(fp);
}
int main()
{
testfichier();
copie1();
verifcopie1();
system("PAUSE");
}
Je suis désolé de dérivé un peu du sujet!!!!
- Pas de skuat de thread, merci.
- :tagcode:
- Ça compile, ça ?
Code:("C:\\Documents and Settings\\X\\Mes documents\\essaiC.txt",=,"C:\\Documents and Settings\\X\\Bureau"); /* Nom du fichier source */ /* Nom du fichier destination */
et en plus les fclose sont à l'extèrieur du if ( fp == NULL )..
Code:
1
2
3
4
5
6
7
8
9 if ( fp == NULL ) { } else { .... fclose(fp); }