Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Ergebnis 1 bis 8 von 8

Thema: Verzeichnisnamen auslesen mit VBScript, WinCCflex

  1. #1
    Registriert seit
    04.07.2007
    Beiträge
    147
    Danke
    6
    Erhielt 13 Danke für 13 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Tach,
    wie oben erwähnt benutzte ich VBScript unter WinCCflex. Nun wollte ich sämtliche Name der Unterverzeichnisse eines Ordners in Stringvariablen schreiben.
    Diese Aufgabe habe ich schon erfolgreich mit Dateien eines Ordners geschaft mit der folgenden Zeile:
    [PHP]If SmartTags(Pfadname) = False Then s=fs.dir(pathName+"*.txt") End If[/PHP]

    Nun hatte ich eigentlich angenommen das ganze wird mit folgendem Code auch mit Verzeichnissen funktionieren.
    [PHP]If SmartTags(Pfadname) = True Then s=fs.dir(pathName+"*.") End If
    [/PHP]


    Dem ist aber leider nicht so, da die Variable "s" keine Werte zurückliefert. Mit welchem Befehl kann ich nur Verzeichnisse auswählen?
    Das Betriebssystem ist Windows CE.
    Geändert von Hotsch (07.07.2009 um 14:27 Uhr)
    Zitieren Zitieren Verzeichnisnamen auslesen mit VBScript, WinCCflex  

  2. #2
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    Hallo,
    wenn ich dich richtig verstanden habe, dann müßte das folgende dir helfen :
    Code:
        Dim fs, f, f1, fc, s
        Set fs = CreateObject("Scripting.FileSystemObject")
        Set f = fs.GetFolder(Such_Verzeichnis)
        Set fc = f.SubFolders
        For Each f1 in fc
            s = s & f1.name 
            s = s &  vbCrLf
        Next
    
    Gruß
    LL

  3. #3
    Hotsch ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.07.2007
    Beiträge
    147
    Danke
    6
    Erhielt 13 Danke für 13 Beiträge

    Standard

    Ist das mit dem Script in flexible möglich? Scripting.FileSystemObject ist doch nur in der Version für "richtiges" Windows drin und nicht bei Windows CE oder täusche ich mich da?
    Ich bekomme in der Zeile:
    Set fs = CreateObject("Scripting.FileSystemObject")
    eine Fehlermeldung das die ActiveX Komponente nicht erstellt werden kann.
    Geändert von Hotsch (07.07.2009 um 14:22 Uhr)

  4. #4
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    in einer Runtime-Umgebung würde das funktionieren.
    Bei einem TP oder MP kann ich dir dazu nichts sagen (dort setze ich so etwas nicht ein). Es gibt in der Rubrik FAQ aber von Volker einen Beitrag, in dem es auch eine Liste mit den möglichen VB-Script-Befehlen unter Windows CE gibt. Und zwar hier ...

    Gruß
    LL

  5. #5
    Hotsch ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.07.2007
    Beiträge
    147
    Danke
    6
    Erhielt 13 Danke für 13 Beiträge

    Standard

    Jo danke, aber das hab ich schon gefunden. Das was ich absolut nicht kapiere ist wenn ich statt:
    [PHP]If SmartTags(Pfadname) = True Then s=fs.dir(pathName+"*.txt") End If[/PHP]
    das Eingebe:
    [PHP]If SmartTags(Pfadname) = True Then s=fs.dir(pathName+"*.*") End If [/PHP]

    dann werden alle Dateien und Ordner aufgelistet, so wie man es aus Dos kennt, aber *. funktioniert nicht.

  6. #6
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.716
    Danke
    398
    Erhielt 2.399 Danke für 1.999 Beiträge

    Standard

    Ich habe mir geade mal die Beschreibung des von dir verwendeten DIR-Befehls angesehen ...
    Ist dir aufgefallen, dass du dem Befehl auch noch ein Attribut mit übergeben kannst ? Damit könntest du dann festlegen, was du lesen willst ...

    Wenn du z.B. das folgende machst :
    Code:
    If SmartTags(Pfadname) = True Then s=fs.dir(pathName+"*.*" , 16) End If  
    
    ... dann solltest du nur noch Unterverzeichnisse zurück gelifert bekommen ... Test das doch mal ...

    Gruß
    LL

  7. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Hotsch (07.07.2009)

  8. #7
    Hotsch ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    04.07.2007
    Beiträge
    147
    Danke
    6
    Erhielt 13 Danke für 13 Beiträge

    Standard

    Besten dank, das hat geklappt. Ich hab das zwar auch schon vorher ausprobiert, aber da wollte es irgendwie nicht. Nun läuft es aber.

    Nachtrag:
    Für den Fall das es jemanden intressiert ich hab meinen Fehler gefunden. Ich hab immer

    If SmartTags(Pfadname) = True Then s=fs.dir(pathName , 16) End If
    benutzt, also *.* weggelassen. Dies mag der Compiler wohl nicht so gern.
    Geändert von Hotsch (07.07.2009 um 16:33 Uhr)

  9. #8
    Registriert seit
    04.02.2015
    Beiträge
    23
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Daumen hoch


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Servus,

    bist du nach 6 jahren einen Code, der alle Unterordner bis zum letzten Ordner eines "Startordners" durchsucht .
    Da bin ich grad dabei.
    Geändert von Rafaelius (07.10.2015 um 16:47 Uhr)

Ähnliche Themen

  1. Antworten: 2
    Letzter Beitrag: 11.10.2011, 12:23
  2. Antworten: 7
    Letzter Beitrag: 11.09.2009, 14:01
  3. Antworten: 1
    Letzter Beitrag: 20.08.2009, 14:10
  4. Antworten: 7
    Letzter Beitrag: 17.10.2007, 18:16
  5. drucken mit VBScript
    Von volker im Forum HMI
    Antworten: 6
    Letzter Beitrag: 14.06.2004, 12:43

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •