FtpGetFile und InternetSetStatusCallback?
-
Poste mal wie du es versucht hast, dann kann man damit rumspielen. hab jetzt keine Lust den ganzen WinInet kram selber abzutippen um das Problem nachvollziehen zu können.
-
Hab es geschafft!
Jedoch muss ich mich nun mit folgender Warnung rumschlagen die ich gerne weg hätte.
warning C4311: 'type cast' : pointer truncation from 'void (__stdcall *)(HINTERNET,DWORD,DWORD,LPVOID,DWORD)' to 'DWORD'Weil ich die Funktion auf einen DWORD caste geht es, aber ich bekomm diese warning einfach nicht weg!
FtpGetFile( ftp, "/bank.zip", "c:\\bank.zip", FALSE, FILE_ATTRIBUTE_NORMAL, FTP_TRANSFER_TYPE_BINARY, (DWORD)&MyStatusCallbackFunction);Jemand ne Idee?
-
besser wäre nach DWORD_PTR zu casten
-
Das macht irgendwie keinen Sinn dort die Callback-Funktion zu übergeben. Dort kann man einen Parameter übergeben der dann in der Callback-Funktion verfügbar ist.
void CALLBACK InternetStatusCallback( HINTERNET hInternet, DWORD_PTR dwContext, // <---- DWORD dwInternetStatus, LPVOID lpvStatusInformation, DWORD dwStatusInformationLength );
-
WIE komme ich denn dann an diesen Parameter zur benutzung, damit ich ihn an FtpGetFile geben kann?
-
Ich verstehe deine Frage nicht aber wenn du nicht weißt was du übergeben sollst dann nimm 0.
-
WITZKNUBBEL! nehme ich 0 wird die callback nicht aufgerufen. denk doch mal nach
-
da kann ich nachdenken soviel ich will das bleibt für mich unlogisch

sorry ich mische mich nicht mehr ein.
-
Um ehrlich zu sein steh ich gerade aufm schlauch. das was du da übergibst ist doch ein parameter für die callback funktion und du übergibst einen zeiger auf eine funktion die deine callback funktion darstellen soll?

-
das ist ja grade das komplizierte!