CopyFileEx Callbeck Fehler
-
Ich möchte Dateien kopieren, und den Fortschritt beobeachten.
Dazu habe ich eine Callback Funktion geschrieben die von CopyFileEx aufgerufen werden soll.DWORD CopyProgressRoutine( LARGE_INTEGER TotalFileSize, LARGE_INTEGER TotalBytesTransferred, LARGE_INTEGER StreamSize, LARGE_INTEGER StreamBytesTransferred, DWORD dwStreamNumber, DWORD dwCallbackReason, HANDLE hSourceFile, HANDLE hDestinationFile, LPVOID lpData ) { //mach was... }
Leider weigert sich mein Compiler:
[BCC32 Fehler] UnitMain.cpp(78): E2034 Konvertierung von 'unsigned long (* (_closure )(_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,unsigned long,unsigned long,void *,void *,void *))(_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,unsigned long,unsigned long,void *,void *,void *)' nach 'unsigned long (__stdcall *)(_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,_LARGE_INTEGER,unsigned long,unsigned long,void *,void *,void *)' nicht möglich
wo liegt der Fehler, ich verzweifle gerade
-
Du kannst keinen Funktionszeiger auf Memberfunktionen erhalten. Benutze eine freie Funktion und übergib den Objektzeiger in lpData.
Auch muß deine Funktion die Aufrufkonvention CALLBACK verwenden.