Meine Copy & Move Funktionen
-
Hallo, ich habe hier Funktionen zum Kopieren & Verschieben von Verzeichnissen und Dateien:
Kopieren
void Copy_Folder(LPCTSTR pszFrom, LPCTSTR pszTo) { SHFILEOPSTRUCT fos = {0}; fos.wFunc = FO_COPY; fos.pFrom = pszFrom; fos.pTo = pszTo; SHFileOperation(&fos); } void Copy_File(LPCTSTR pszFrom, LPCTSTR pszTo) { SHFILEOPSTRUCT fop; fop.hwnd = NULL; fop.wFunc = FO_COPY; fop.pFrom = pszFrom; fop.pTo = pszTo; fop.fFlags = FOF_ALLOWUNDO; SHFileOperation(&fop); }**
Verschieben**void Move_Folder(LPCTSTR pszFrom, LPCTSTR pszTo) { SHFILEOPSTRUCT fos = {0}; fos.wFunc = FO_MOVE; fos.pFrom = pszFrom; fos.pTo = pszTo; SHFileOperation(&fos); } void Move_File(LPCTSTR pszFrom, LPCTSTR pszTo) { SHFILEOPSTRUCT fos = {0}; fos.hwnd = NULL; fos.wFunc = FO_MOVE; fos.pFrom = pszFrom; fos.pTo = pszTo; fos.fFlags = FOF_ALLOWUNDO; SHFileOperation(&fos); }Hat jemand noch Verbesserungsvorschläge und wie kann man bei vorhandenen Dateien die Windows Dialoge ausblenden und diese in der Konsole anzeigen??
-
Wenn du die Bestätigungsdialoge ausblenden willst musst du die entsprecheneden flags setzten, wie z.B. "FOF_NOCONFIRMATION", aber da gibts ja noch andere. Am besten du schaust mal in die MSDN.
-
Habe eine Rename-Funktion geschrieben, doch irgendwie werden die Dateien nicht umbenannt

void Rename_File(LPCTSTR pszFrom, LPCTSTR pszTo) { SHFILEOPSTRUCT fos = {0}; fos.hwnd = NULL; fos.wFunc = FO_RENAME; fos.pFrom = pszFrom; fos.pTo = pszTo; fos.fFlags = FOF_NOCONFIRMATION|FOF_SILENT; SHFileOperation(&fos); } Rename_File("E:\\test.txt", "E:\\blabla.txt");Weiß jemand was falsch ist ??
-
MoveFile/MoveFileEx ist einfacher und direkter.
-
Das verschieben klappt schon, doch ich brauche eine Umbenennen-Funktion, jedoch meine Funktioniert nicht

-
MoveFile/MoveFileEx benennt auch um.
