Autor Thema: Verzeichnis Existenz verifizieren?  (Gelesen 1649 mal)

Offline gfunkus

  • Aktives Mitglied
  • ***
  • Beiträge: 224
  • Geschlecht: Männlich
  • www.atnotes.de! Hier werden sie geholfen.
Verzeichnis Existenz verifizieren?
« am: 01.09.04 - 12:21:14 »
Hi,

Hat wer ne Idee wie ich festellen kann in LS das ein Vez. schon exisitiert? Vermute mit curdir$ oder so?

Danke für eure Hilfe!

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Re:Verzeichnis Existenz verifizieren?
« Antwort #1 am: 01.09.04 - 13:02:46 »
CurDir gibt lediglich das gerade aktuelle Verzeichnis zurück.

Zur Prüfung auf die Existenz eines Directorys bleibt nur, auf den möglichen Fehlercode eines ChDir zu reagieren - oder die WinAPI zu bemühen, darüber sollte das auch gehen.

Bernhard

Offline eknori

  • @Notes Preisträger
  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 11.730
  • Geschlecht: Männlich
Re:Verzeichnis Existenz verifizieren?
« Antwort #2 am: 01.09.04 - 13:15:15 »
Function checkDir( path As String ) As String
   
   On Error Resume Next
   
   CheckDir = False
   
   Chdrive Left( path, 1 )
   Chdir path
   
   If Curdir = path Then          
      CheckDir = True
   End If
   
End Function

Sub Click(Source As Button)
   Msgbox checkDir("c:\Winnt\system32\drivörs")
End Sub

Gibt TRUE zurück, wenn Dir existiert andernfalls FALSE
Egal wie tief man die Messlatte für den menschlichen Verstand auch ansetzt: jeden Tag kommt jemand und marschiert erhobenen Hauptes drunter her!

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Verzeichnis Existenz verifizieren?
« Antwort #3 am: 01.09.04 - 19:37:47 »
Geht das nicht noch einfacher?

If dir$("c:\dokumente\test", 16) = "" Then
   Msgbox "Das Verzeichnis -test- gibt es nicht !"
Else
   Msgbox "Das Verzeichnis -test- ist vorhanden."
End If
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Offline Semeaphoros

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 8.152
  • Geschlecht: Männlich
  • ho semeaphoros - agr.: der Notesträger
    • LIGONET GmbH
Re:Verzeichnis Existenz verifizieren?
« Antwort #4 am: 01.09.04 - 19:49:31 »
Sollte gehen, ausser man hat es mit einer leeren Partition zu tun, oder einen leeren Netzwerk-Share auf der Basis von Netzsoftware, die die beiden Verzeichnisse "." und ".." nicht mitliefern (zum Bleistift Samba in Abhängigkeit der Konfiguration)
Jens-B. Augustiny

Beratung und Unterstützung für Notes und Domino Infrastruktur und Anwendungen

Homepage: http://www.ligonet.ch

IBM Certified Advanced Application Developer - Lotus Notes and Domino 7 und 6
IBM Certified Advanced System Administrator - Lotus Notes and Domino 7 und 6

Glombi

  • Gast
Re:Verzeichnis Existenz verifizieren?
« Antwort #5 am: 01.09.04 - 20:36:08 »
Geht das nicht noch einfacher?

If dir$("c:\dokumente\test", 16) = "" Then
   Msgbox "Das Verzeichnis -test- gibt es nicht !"
Else
   Msgbox "Das Verzeichnis -test- ist vorhanden."
End If


Der fliegt auf die Nase, wenn das Laufwerk nicht da ist. Auch bei 8 anstelle von 16: Es kommt die Meldung "Path not found" (oder so). Also auch hier wäre ein Error Handling nötig.

Andreas
« Letzte Änderung: 01.09.04 - 20:36:23 von Glombi »

Offline TMC

  • Freund des Hauses!
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.660
  • Geschlecht: Männlich
  • meden agan
Re:Verzeichnis Existenz verifizieren?
« Antwort #6 am: 01.09.04 - 20:40:24 »
Errorhandling: Klar, logisch, immer  :D

Wollte nur auf den "Dir" - Befehl aufmerksam machen  ;)
Matthias

A good programmer is someone who looks both ways before crossing a one-way street.


Glombi

  • Gast
Re:Verzeichnis Existenz verifizieren?
« Antwort #7 am: 01.09.04 - 20:43:32 »
Ok, dann muss aber der Code anders aufgebaut sein. Er geht nicht in den If Zweig, sondern knallt gleich vor die Wand.

Ansonsten: Dir$ ist mir auch als erstes eingefallen, da ich das immer für sowas verwende.

Andreas

Offline HarryB

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 521
  • Geschlecht: Männlich
Re:Verzeichnis Existenz verifizieren?
« Antwort #8 am: 02.09.04 - 08:41:08 »
Function checkDir( path As String ) As String
   
   On Error Resume Next
   
   CheckDir = False
   
   Chdrive Left( path, 1 )
   Chdir path
   
   If Curdir = path Then          
      CheckDir = True
   End If
   
End Function

Sub Click(Source As Button)
   Msgbox checkDir("c:\Winnt\system32\drivörs")
End Sub

Gibt TRUE zurück, wenn Dir existiert andernfalls FALSE

Wäre es sinnvoll, am Ende der Funktion das Directory wieder auf den ursprünglichen Pfad zu setzen?

Viele Grüße
Harry
Harald "HarryB" Börger

2 x 7.0.2FP1 auf AIX (Cluster)
1 x 7.0.2FP2 auf AIX
1 x 6.5.5 auf AIX
4 x 7.02.FP2 auf WIN

Clients: 7.0.2

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz