begin process at 2012 05 30 10:20:53
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Réseau / Internet

 > 

Transfert d'un fichier d'un ftp


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Transfert d'un fichier d'un ftp

mardi 18 juin 2002 à 14:49:52 | Transfert d'un fichier d'un ftp

header

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header
mardi 18 juin 2002 à 15:29:52 | Re : Transfert d'un fichier d'un ftp

ADPro22

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header
mardi 18 juin 2002 à 17:48:37 | Re : Transfert d'un fichier d'un ftp

header

Lors dun debogage voila mon pointeur ;

pFile 0x00772540 {FILE*=0x00000000 name=???}

je ne comprend pas pourtant le pointeur est qssuré valide...
Ta suggestion me donne un viol de la dll MSVCRTD.DLL ca ne marche donc pas ce ki voufrait dire que le pointeur n'est en fait pas valide puisquil ne pe pas se promeneer ds le fichier donc kil ne pe pas lire les données. Mais pk ca marche avec un fichier texte ??????????????
Ta une idée pour le pointeur ???


-------------------------------
Réponse au message :
-------------------------------

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header

mardi 18 juin 2002 à 18:16:51 | Re : Transfert d'un fichier d'un ftp

header

Le pointeur est valide car il n'a pas la valeur NULL
La fonction Read marche mais elle me lit nimporte quoi


-------------------------------
Réponse au message :
-------------------------------

Lors dun debogage voila mon pointeur ;

pFile 0x00772540 {FILE*=0x00000000 name=???}

je ne comprend pas pourtant le pointeur est qssuré valide...
Ta suggestion me donne un viol de la dll MSVCRTD.DLL ca ne marche donc pas ce ki voufrait dire que le pointeur n'est en fait pas valide puisquil ne pe pas se promeneer ds le fichier donc kil ne pe pas lire les données. Mais pk ca marche avec un fichier texte ??????????????
Ta une idée pour le pointeur ???


-------------------------------
Réponse au message :
-------------------------------

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header


mardi 18 juin 2002 à 18:22:11 | Re : Transfert d'un fichier d'un ftp

header

Je progresse...
Si "buffer" était rempli de IIIIIIIIIIIIIII avec des accents c que a variable n'était pas initialisé... une erreur tres conne qui ma bouffée du temps. Maintenant que tt ca est réparé j'ai toujours autant de problèmes. Le problème est que ma fonction Read ne lit rien.
Des suggestions ???????



-------------------------------
Réponse au message :
-------------------------------

Le pointeur est valide car il n'a pas la valeur NULL
La fonction Read marche mais elle me lit nimporte quoi


-------------------------------
Réponse au message :
-------------------------------

Lors dun debogage voila mon pointeur ;

pFile 0x00772540 {FILE*=0x00000000 name=???}

je ne comprend pas pourtant le pointeur est qssuré valide...
Ta suggestion me donne un viol de la dll MSVCRTD.DLL ca ne marche donc pas ce ki voufrait dire que le pointeur n'est en fait pas valide puisquil ne pe pas se promeneer ds le fichier donc kil ne pe pas lire les données. Mais pk ca marche avec un fichier texte ??????????????
Ta une idée pour le pointeur ???


-------------------------------
Réponse au message :
-------------------------------

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header



mardi 18 juin 2002 à 20:44:46 | Re : Transfert d'un fichier d'un ftp

Kaid


Peut-être un indice: en FTP, il y'a deux modes de transfert: ASCII et Binaire.
Faut-t'il passer de l'un à l'autre ?

-------------------------------
Réponse au message :
-------------------------------

Je progresse...
Si "buffer" était rempli de IIIIIIIIIIIIIII avec des accents c que a variable n'était pas initialisé... une erreur tres conne qui ma bouffée du temps. Maintenant que tt ca est réparé j'ai toujours autant de problèmes. Le problème est que ma fonction Read ne lit rien.
Des suggestions ???????



-------------------------------
Réponse au message :
-------------------------------

Le pointeur est valide car il n'a pas la valeur NULL
La fonction Read marche mais elle me lit nimporte quoi


-------------------------------
Réponse au message :
-------------------------------

Lors dun debogage voila mon pointeur ;

pFile 0x00772540 {FILE*=0x00000000 name=???}

je ne comprend pas pourtant le pointeur est qssuré valide...
Ta suggestion me donne un viol de la dll MSVCRTD.DLL ca ne marche donc pas ce ki voufrait dire que le pointeur n'est en fait pas valide puisquil ne pe pas se promeneer ds le fichier donc kil ne pe pas lire les données. Mais pk ca marche avec un fichier texte ??????????????
Ta une idée pour le pointeur ???


-------------------------------
Réponse au message :
-------------------------------

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header




mardi 18 juin 2002 à 21:33:00 | Re : Transfert d'un fichier d'un ftp

header


Voila voila c ptet le pb. Je prend le mode binaire ms est ce qu'il ouvre le fichier vraiment en binaire ???
si c le cas je suis oblige car une application ne contient pas de caracteres ascii
Ma fonction read ne lit rien c ca ki mennui. Si elle lit rien c ke mon pointeur est invalide pourtant il est != de NULL
Aide...


-------------------------------
Réponse au message :
-------------------------------


Peut-être un indice: en FTP, il y'a deux modes de transfert: ASCII et Binaire.
Faut-t'il passer de l'un à l'autre ?

-------------------------------
Réponse au message :
-------------------------------

Je progresse...
Si "buffer" était rempli de IIIIIIIIIIIIIII avec des accents c que a variable n'était pas initialisé... une erreur tres conne qui ma bouffée du temps. Maintenant que tt ca est réparé j'ai toujours autant de problèmes. Le problème est que ma fonction Read ne lit rien.
Des suggestions ???????



-------------------------------
Réponse au message :
-------------------------------

Le pointeur est valide car il n'a pas la valeur NULL
La fonction Read marche mais elle me lit nimporte quoi


-------------------------------
Réponse au message :
-------------------------------

Lors dun debogage voila mon pointeur ;

pFile 0x00772540 {FILE*=0x00000000 name=???}

je ne comprend pas pourtant le pointeur est qssuré valide...
Ta suggestion me donne un viol de la dll MSVCRTD.DLL ca ne marche donc pas ce ki voufrait dire que le pointeur n'est en fait pas valide puisquil ne pe pas se promeneer ds le fichier donc kil ne pe pas lire les données. Mais pk ca marche avec un fichier texte ??????????????
Ta une idée pour le pointeur ???


-------------------------------
Réponse au message :
-------------------------------

C'est juste une suggestion :
Le fichier est peut être ouvert à la fin et si tu obliges ton programme à se placer au début, cela pourrait marcher.



-------------------------------
Réponse au message :
-------------------------------

Salut,

J'ia besion d'aide : pour que tlm puisse comprendre voici mon source :


char buffer[DWN_BUFFER]; // c un define 4096
unsigned int count = DWN_BUFFER;
bool lu=1;



CInternetFile* pFile = m_FtpConnect->OpenFile (appliname); // ouverture du fichier en open_type_binary (binaire donc)



while(lu!=0)
{

try
{
count = pFile->Read (buffer,DWN_BUFFER); // lire ds le fichier

}
catch ( CInternetException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
try
{
if(count!=0) // si il a lu qqch
local.Write (buffer,count);
else
lu=0; //sinon on sort de la boucle



}
catch ( CFileException *pex )

{
TCHAR error[1024];
if(pex->GetErrorMessage (error,1024))
AfxMessageBox(error,MB_OK);
pex -> Delete( ) ;

}
};
MessageBox("Fichier transfere");

Ce code source marche tres bien avec un fichier texte a télécharger... mais avec une application un zip ou nimporte koi d'autre ca marche pas.
Le problème est que la variable "count" reste à zéro c'est a dire que je n'ai aucun bytes qui est lu.
et si j'éxamine le "buffer" j'ai que des IIIIIIIIIII avec des accents... ce qui ve dire que ce sont des caracteres inconnus...
La différence entre un fichier texte et un prog c ke le fichier textes contient bcp + de caracteres ascii qu'un prog par ex.
La fonction OPEN_TYPE_BINARY ouvre telle bien le fichier en binaire ??????? pk mon prog marche avec un fichier txt et pas un exe ??????? ou un zip ??????
SVP aidez moi... dites moi ce ki va pas pcq je compnrend +. Qqun pe mexpliquer ?????????
Je vs remercie
Header







Cette discussion est classée dans : fichier, buffer, count, error, pex


Répondre à ce message

Sujets en rapport avec ce message

crypter/decrypter simplement une image [ par cool2source ] Bonjour, Je veux faire un programme qui "crypte" un fichier ( texte, image... ). Dans mon programme, je fais un fread du fichier à copier et ensuite xmlDocPtr plante mon appli [ par VBREP ] utilisation de xmlDocPtr fait plante mon appli je verifi l'existance d'un fichier dans un dossier, ce fichier porte le meme nom que le dossier avec u tableau appelé par deux application [ par aymen87 ] Bonjour J'ai un fichier header.h dans ce fichier j'ai déclaré buffer[100] -dans une première application console win32 j'ai fait #include "header.h" prob d'enreg de fichier [ par narry ] salut tout le monde, j'ai un prog qui doit générer un fichier et l'enregistrer sur mon rep, mais le probleme est que je ne le trouve pas, le code m'a lire le contenu d'un fichier tel qu'il est [ par ibti25 ] Bonjour,Je m'arrive pas a afficher le contenu de mon fichier comme il est au niveau d'un terminal.Ce que me fait mon code (cidessous), c'est un affich Cryptage d'un ficher/Décryptage dans un buffer RAM [ par yannou2 ] Bonjour, J'aurais aimé avoir quelques infos sur un problème que je rencontre. Dans une appli, je dois crypter un fichier qui représente une output (n PROBLÈME affichage contenu d'un fichier ! [ par charleslemagicien ] Bonjour à tous, Dans mon programme je dois ouvrir et lire le contenu d'un fichier et l'afficher à l'écran pour l'instant aucun problème sa marche... enregistrement de buffer dans un fichier [ par ekto45 ] Bonjour Je bosse sur une interface CVI/labwindows ( langage C) et je dois récupérer grâce à des requêtes MODBUS que j'envoie sur mon port COM des don supression de fichier [ par anatheme94 ] bonjour petit probleme de débutant....? wstring filename(L"image.jpg"); Bitmap bmp(filename.c_str()); buffer = Convert_BitMap_to_Data( Problème lors de la récéption de données en HTTP [ par Fran6web ] Bonjour,Je suis en train de me faire un programme en C qui me récupère le contenu d'un page envoyé par protocole HTTP.J'ai cependant un p'tit problème


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,515 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales