|
|
|
|
|
Wenn Sie es gewohnt sind, in Ihren Anwendungen mit dem aktuellen
Verzeichnis zu arbeiten (das ist das Verzeichnis, das die Funktion
CurDir liefert), kann die API-Funktion GetFullPathName
recht nützlich sein. Sie setzt aus dem aktuellen Verzeichnis und
einem Dateinamen oder Pfadbestandteil einen vollständigen Pfad
zusammen. Wenn etwa das aktuelle Verzeichnis "c:\ " wäre
und Sie "autoexec.bat" hinzufügen, erhalten Sie "c:\autoexec.bat".
Natürlich könnten Sie die beiden Teil-Strings des Pfads auch
manuell zusammenfügen - nur müssten Sie dazu immer den aktuellen
Pfad ermitteln.
Die Funktion, die wir zur Vereinfachung des API-Aufrufs in die
Hilfs-Funktion FullPath gehüllt haben, kann aber noch mehr. Sie
kann nämlich zum aktuellen Verzeichnis relative Pfade auflösen.
Angenommen, das aktuelle Verzeichnis wäre "c:\Programme",
dann würde die Funktion nach Übergabe von "..\Windows\win.ini"
den Pfad "c:\Windows\win.ini" zurückgeben.
Private Declare Function GetFullPathName Lib "kernel32" _
Alias "GetFullPathNameA" (ByVal lpFileName As String, _
ByVal nBufferLength As Long, ByVal lpBuffer As String, _
ByVal lpFilePart As String) As Long
Public Function FullPath(Path As String) As String
Dim nBuffer As String
Dim nFilePart As String
Dim nLen As Long
nBuffer = Space$(255)
nLen = GetFullPathName(Path, Len(nBuffer), nBuffer, nFilePart)
If nLen Then
FullPath = Left$(nBuffer, nLen)
End If
End Function

|
|
|