Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.107 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: String auf Pathgültigkeit testen ?

  Alt 1. Mär 2007, 22:29
Moin Matti,

vielleicht solltest Du Dir mal die Funktionen MSDN-Library durchsuchenPathIsDirectory oder MSDN-Library durchsuchenPathIsRelative ansehen.
Das sind Funktionen der Shell Lightweight API (shlwapi.dll), die selbst importiert werden müssen.

Auch wenn Deine Methode funktioniert:
Ist es sinnvoll zu versuchen ein Verzeichnis anzulegen, nur um zu erkennen, ob es eines ist?

Du könntest auch einfach prüfen, ob der String ungültige Zeichen enthält (:,",<,>,|,*,?). : nur, wenn keine Laufwerksangabe enthalten sein kann. Das / fehlt übrigens bewusst, da es ein gültiges Pfadtrennzeichen darstellt. Es ist identisch zu \ verwendbar.
Ein Problem wäre natürlich, wenn der String mit \\ anfängt. Dann könnte es eine Serverangabe sein, oder einfach ein relativer Pfad mit zwei aufeinander folgenden Pfadtrennern Eine beliebige Anzahl hintereinander, auch unterschiedlicher Pfadtrennzeichen ist erlaubt, und wird vom Dateisystem als eines erkannt.
(C:\\\\\\Temp = C:\Temp = C:/temp = C:/\/\/\temp)
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat