MoveFileEx

Aus API-Wiki
Zur Navigation springenZur Suche springen


Diese Funktion erlaubt es eine Datei oder ein Verzeichnis zu verschieben.

<vb> Declare Function MoveFileEx Lib "kernel32.dll" _

                Alias "MoveFileExA" ( _
                ByVal lpExistingFileName As String, _
                ByVal lpNewFileName As String, _
                ByVal dwFlags As Long _
                ) As Long

</vb>


Parameter

lpExistingFilename

Name der Datei / des Verzeichnisses inklusive der Verzeichnisstruktur ist anzugeben.

lpNewFileName

Name der Datei / des Verzeichnisses im neuen Verzeichnis (die übergeordnete Verzeichnisstruktur ist anzugeben).

dwFlags

Erwartet eine oder mehrere der folgenden Konstanten, die weitere Optionen für den Vorgang festlegen.

<vb> Const MOVEFILE_COPY_ALLOWED = &H2 'Kopieren auf andere Partitionen erlaubt Const MOVEFILE_CREATE_HARDLINK = &H10 'Reserviert Const MOVEFILE_DELAY_UNTIL_REBOOT = &H4 'Erst nach einem Reboot kopieren. Nicht kombinierbar mit MOVEFILE_COPY_ALLOWED Const MOVEFILE_FAIL_IF_NOT_TRACKABLE = &H20 'Fehlschlag der Funktion, wenn das Dateisystem nicht benutzbar ist. Const MOVEFILE_REPLACE_EXISTING = &H1 'Gleiche Dateinamen werden beim Verschieben überschrieben Const MOVEFILE_WRITE_THROUGH = &H8 'Fortsetzung des Programms erst nach erfolgreichem Verschieben </vb>

Rückgabe

War die Funktion erfolgreich, so erfolgt eine Übergabe eines Wertes ungleich 0. Sollte die Funktion fehlschlagen, so kann die Fehlerursache mittels der VB-Funktion Err.LastDLLError festgestellt werden.


Beispiel

<vb> Dim lResult As Long

lResult = MoveFileEx("C:\Bla.txt", "E:\törööhöhö.txt", MOVEFILE_COPY_ALLOWED)

If lResult = 0 Then

   MsgBox "Fehler beim Verschieben des Objektes!", vbCritical, "Fehler!"

End If </vb>