Problème utilisation d'InternetGetLastResponseInfo // Upload fichier c++
5 réponses
Charles AHMADZADEH
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui doit
entre-autres être capable d'uploader un fichier (.txt en l'occurence) sur un
serveur ftp.
Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la
fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je débute
en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fonction
InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonction
(comment initialiser les buffers, etc...). Cette fonction fait planter mon
programme et cela m'empeche d'avancer dans mon projet puisque je ne peux pas
récuperer le messsage d'erreur ^^. De plus, impossible de trouver un exemple
sur internet (à l'instar de GetLastError).
C'est réalisé sous Dev-C++, le fichier local est dans le répertoire du main
ainsi que dans le répertoire de mon code source "upload.cpp".
L'ordinateur sur lequel je lance le programme possède les autorisations
nécessaires pour créer un fichier sur le serveur.
if((hInet = InternetOpen("ftp.blablabla.com/projet/",
INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0)) != INVALID_HANDLE_VALUE)
//ftp.blablabla.com/projet/ est le répertoire du ftp dans
// lequel je souhaite upload mon fichier.
{
if((hFTP = InternetConnect(hInet, FTPSERV, 21, FTPUSER, FTPPASS,
INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)) != INVALID_HANDLE_VALUE)
{
succes_up = FtpPutFile(hFTP, SRCFILE, DSTFILE,
FTP_TRANSFER_TYPE_BINARY, 0); // succes_up = 0, l'upload n'a pas marché.
InternetOpen et InternetConnect renvoient 1.
//Get Last Error
dwLastError = GetLastError();
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL,
dwLastError,
MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR)&pszMessage,0, NULL );
wprintf(L"\nfailed with error %d: %s", dwLastError,
pszMessage); // Code 12003: Use InternetGetLasResponseInfo pour récupérer
le message
//Internet response info
InternetGetLastResponseInfo(lpdwError,lpszBuffer,lpdwBufferLength);
// Je ne sais pas comment initialiser les variables utilisées par cette
fonction, et impossible de trouver un exemple sur internet ...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Charles AHMADZADEH
Désolé si j'ai envoyé plusieur fois le même message, c'est la première fois que j'utilise un NewsGroup.
"Charles AHMADZADEH" a écrit dans le message de news:gcii58$g6o$
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui doit entre-autres être capable d'uploader un fichier (.txt en l'occurence) sur un serveur ftp. Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je débute en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fonction InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonction (comment initialiser les buffers, etc...). Cette fonction fait planter mon programme et cela m'empeche d'avancer dans mon projet puisque je ne peux pas récuperer le messsage d'erreur ^^. De plus, impossible de trouver un exemple sur internet (à l'instar de GetLastError).
C'est réalisé sous Dev-C++, le fichier local est dans le répertoire du main ainsi que dans le répertoire de mon code source "upload.cpp". L'ordinateur sur lequel je lance le programme possède les autorisations nécessaires pour créer un fichier sur le serveur.
if((hInet = InternetOpen("ftp.blablabla.com/projet/", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0)) != INVALID_HANDLE_VALUE) //ftp.blablabla.com/projet/ est le répertoire du ftp dans // lequel je souhaite upload mon fichier. { if((hFTP = InternetConnect(hInet, FTPSERV, 21, FTPUSER, FTPPASS, INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)) != INVALID_HANDLE_VALUE) { succes_up = FtpPutFile(hFTP, SRCFILE, DSTFILE, FTP_TRANSFER_TYPE_BINARY, 0); // succes_up = 0, l'upload n'a pas marché. InternetOpen et InternetConnect renvoient 1.
//Get Last Error dwLastError = GetLastError(); FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL, dwLastError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR)&pszMessage,0, NULL ); wprintf(L"nfailed with error %d: %s", dwLastError, pszMessage); // Code 12003: Use InternetGetLasResponseInfo pour récupérer le message
//Internet response info InternetGetLastResponseInfo(lpdwError,lpszBuffer,lpdwBufferLength); // Je ne sais pas comment initialiser les variables utilisées par cette fonction, et impossible de trouver un exemple sur internet ...
Désolé si j'ai envoyé plusieur fois le même message, c'est la première fois
que j'utilise un NewsGroup.
"Charles AHMADZADEH" <charles.ahmadzadeh@gmail.com> a écrit dans le message
de news:gcii58$g6o$1@aioe.org...
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui doit
entre-autres être capable d'uploader un fichier (.txt en l'occurence) sur
un serveur ftp.
Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la
fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je débute
en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la
fonction InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette
fonction (comment initialiser les buffers, etc...). Cette fonction fait
planter mon programme et cela m'empeche d'avancer dans mon projet puisque
je ne peux pas récuperer le messsage d'erreur ^^. De plus, impossible de
trouver un exemple sur internet (à l'instar de GetLastError).
C'est réalisé sous Dev-C++, le fichier local est dans le répertoire du
main ainsi que dans le répertoire de mon code source "upload.cpp".
L'ordinateur sur lequel je lance le programme possède les autorisations
nécessaires pour créer un fichier sur le serveur.
if((hInet = InternetOpen("ftp.blablabla.com/projet/",
INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0)) != INVALID_HANDLE_VALUE)
//ftp.blablabla.com/projet/ est le répertoire du ftp dans // lequel je
souhaite upload mon fichier.
{
if((hFTP = InternetConnect(hInet, FTPSERV, 21, FTPUSER, FTPPASS,
INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)) != INVALID_HANDLE_VALUE)
{
succes_up = FtpPutFile(hFTP, SRCFILE, DSTFILE,
FTP_TRANSFER_TYPE_BINARY, 0); // succes_up = 0, l'upload n'a pas
marché. InternetOpen et InternetConnect renvoient 1.
//Get Last Error
dwLastError = GetLastError();
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER |
FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL,
dwLastError, MAKELANGID(LANG_NEUTRAL,
SUBLANG_DEFAULT),(LPTSTR)&pszMessage,0, NULL );
wprintf(L"nfailed with error %d: %s", dwLastError,
pszMessage); // Code 12003: Use InternetGetLasResponseInfo pour récupérer
le message
//Internet response info
InternetGetLastResponseInfo(lpdwError,lpszBuffer,lpdwBufferLength);
// Je ne sais pas comment initialiser les variables utilisées par cette
fonction, et impossible de trouver un exemple sur internet ...
Désolé si j'ai envoyé plusieur fois le même message, c'est la première fois que j'utilise un NewsGroup.
"Charles AHMADZADEH" a écrit dans le message de news:gcii58$g6o$
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui doit entre-autres être capable d'uploader un fichier (.txt en l'occurence) sur un serveur ftp. Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je débute en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fonction InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonction (comment initialiser les buffers, etc...). Cette fonction fait planter mon programme et cela m'empeche d'avancer dans mon projet puisque je ne peux pas récuperer le messsage d'erreur ^^. De plus, impossible de trouver un exemple sur internet (à l'instar de GetLastError).
C'est réalisé sous Dev-C++, le fichier local est dans le répertoire du main ainsi que dans le répertoire de mon code source "upload.cpp". L'ordinateur sur lequel je lance le programme possède les autorisations nécessaires pour créer un fichier sur le serveur.
if((hInet = InternetOpen("ftp.blablabla.com/projet/", INTERNET_OPEN_TYPE_DIRECT, NULL, NULL, 0)) != INVALID_HANDLE_VALUE) //ftp.blablabla.com/projet/ est le répertoire du ftp dans // lequel je souhaite upload mon fichier. { if((hFTP = InternetConnect(hInet, FTPSERV, 21, FTPUSER, FTPPASS, INTERNET_SERVICE_FTP, INTERNET_FLAG_PASSIVE, 0)) != INVALID_HANDLE_VALUE) { succes_up = FtpPutFile(hFTP, SRCFILE, DSTFILE, FTP_TRANSFER_TYPE_BINARY, 0); // succes_up = 0, l'upload n'a pas marché. InternetOpen et InternetConnect renvoient 1.
//Get Last Error dwLastError = GetLastError(); FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM |FORMAT_MESSAGE_IGNORE_INSERTS, NULL, dwLastError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT),(LPTSTR)&pszMessage,0, NULL ); wprintf(L"nfailed with error %d: %s", dwLastError, pszMessage); // Code 12003: Use InternetGetLasResponseInfo pour récupérer le message
//Internet response info InternetGetLastResponseInfo(lpdwError,lpszBuffer,lpdwBufferLength); // Je ne sais pas comment initialiser les variables utilisées par cette fonction, et impossible de trouver un exemple sur internet ...
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui do it entre-autres être capable d'uploader un fichier (.txt en l'occurence) s ur un serveur ftp. Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je d ébute en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fon ction InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonct ion
Et en général, on fait un FtpSetCurrentDirectory() avant FtpPutFile(), sinon, il va dans le home du user...
On 8 oct, 16:56, "Charles AHMADZADEH" <charles.ahmadza...@gmail.com>
wrote:
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui do it
entre-autres être capable d'uploader un fichier (.txt en l'occurence) s ur un
serveur ftp.
Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la
fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je d ébute
en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fon ction
InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonct ion
Bonjour, dans le cadre d'un stage, je dois réaliser un programme qui do it entre-autres être capable d'uploader un fichier (.txt en l'occurence) s ur un serveur ftp. Le code m'a l'air correct cepdendant le fichier ne s'upload pas et la fonciton ftpPut renvoie 0 (signalant une erreur). Je précise que je d ébute en programmation ;)
J'ai donc utilisé GetLastError et obtenu un code 12003: utilisez la fon ction InternetGetLastResponseInfo() et Je n'arrive pas à utiliser cette fonct ion