Tipp 0235 Lange Verzeichnispfade verkürzen
Autor/Einsender:
Datum:
  Christian Lotmann
10.05.2002
Entwicklungsumgebung:   VB 5
Seit der Einführung von Windows 95 sind lange Dateipfade und -Namen nicht nur für NT-User möglich, sondern für alle Windows-Anwender mittlerweile selbstverständlich. Doch was machen, wenn aus Platzgründen in einem Programm nicht der gesamte Pfad z. B. in ein Label passt?
Wie man dennoch lange Verzeichnispfade dennoch sinnvoll verkürzen kann, zeigt hier unser Tipp.
 
Option Explicit

Function MaxDirLen(ByVal Pfad As String, ByVal MaxSize _
      As Integer) As String

  Dim i As Integer, pLen As Long

  pLen = Len(Pfad)
  MaxDirLen = Pfad
  If MaxSize = 0 Then MaxSize = 20
  If Len(Pfad) <= MaxSize Then Exit Function

  For i = pLen - MaxSize + 6 To pLen
    If Mid$(Pfad, i, 1) = "\" Then Exit For
  Next i

  MaxDirLen = Left$(Pfad, 3) & "..." & Right(Pfad, pLen - (i - 1))
End Function
 
Beispiel-Aufruf
 
MsgBox MaxDirLen("c:\windows\system\test.txt", 25)
 
Hinweis für VBA-Anwender
Der hier abgebildete Code funktioniert auch in einem VBA-Projekt, dieser muss dazu lediglich in den VB-Editor der entsprechenden Anwendung kopiert werden. Ein Import der im Download enthaltenen *.frm-Datei ist nicht möglich.

Windows-Version
95
98/SE
ME
NT
2000
XP
Vista
Win 7
VB-Version
VBA 5
VBA 6
VB 4/16
VB 4/32
VB 5
VB 6


Download  (3 kB) Downloads bisher: [ 827 ]

Vorheriger Tipp Zum Seitenanfang Nächster Tipp

Startseite | Projekte | Tutorials | API-Referenz | VB-/VBA-Tipps | Komponenten | Bücherecke | VB/VBA-Forum | VB.Net-Forum | DirectX-Forum | Foren-Archiv | DirectX | VB.Net-Tipps | Chat | Spielplatz | Links | Suchen | Stichwortverzeichnis | Feedback | Impressum

Seite empfehlen Bug-Report
Letzte Aktualisierung: Samstag, 20. August 2011