jo...ich muss ein prog schreiben (Visual C++/MFC), dass unter anderem auch die funktion haben soll bestimmte files (*.ll) aus einem angegeben verzeichnis in ein vordefiniertes zu kopieren.
alles kein problem.
nur will ich das ganze gerne mit CopyFileEx machen, um in der CALLBACK fkt. auch den aktuellen kopierstatus abfragen zu können und demnach in einem "kopier-dialog" eine progressbar zu aktualisieren.
das programm lässt sich jetz ohne probleme kompilieren, linken und ausführen, bloß bewirkt der aufruf der fkt CopyFileEx rein gar nix. return davon is 0 und des wars
Der Aufruf:
case ID_SETDIR:
ret = CopyFileEx "D:\\test\\test.txt","D:\\asdf.txt",MyCopyProgressRoutine,NULL,
&cancel,COPY_FILE_RESTARTABLE);
[/php]
Die Callbackfkt:
[php]
DWORD CALLBACK MyCopyProgressRoutine(
LARGE_INTEGER TotalFileSize, // file size
LARGE_INTEGER TotalBytesTransferred, // bytes transferred
LARGE_INTEGER StreamSize, // bytes in stream
LARGE_INTEGER StreamBytesTransferred, // bytes transferred for stream
DWORD dwStreamNumber, // current stream
DWORD dwCallbackReason, // callback reason
HANDLE hSourceFile, // handle to source file
HANDLE hDestinationFile, // handle to destination file
LPVOID lpData // from CopyFileEx
)
{
//CDialogTest* ptr = (CDialogTest*)lpData;
// do something with pointer, e.g. ptr->m_Progressbar.Pos blahblah
DWORD percent = TotalBytesTransferred.LowPart*100/TotalFileSize.LowPart;
return TRUE;
}
weiß vllt irgendjemand nen rat??
biiiitte hilfe
bye