string mit unterordnern und dateien eines ordners Verfasst am: 05.07.2008, 16:47
Hallo ich versuche grade per winsock einen string mit unterordnern und dateien eines bestimmten ordners zu senden. Das klappt auch, aber nicht wie ich es will. ich gebe den angekommen string in einer multiline textbox aus. Die dateien des ausgewählten ordner werden so angezeigt wie ich es will "datei.endung" doch die unterordner werden mit vollem pfad angezeigt sprich "C:bestimmter_ordnerein_unterordner" so möcht ich es aber nicht, sondern so: "ein_unterordner" ich versuce ein funktion zu schreiben die den letzten ordner rausschneidet. doch die funzt nicht --> Visual Basic: [code]Public Function UnterVerzeichnisseAuflisten(ByVal Startverzeichnis As String) Dim fso As FileSystemObject Set fso = New Scripting.FileSystemObject Dim Verzeichnis As Folder Dim UnterVerzeichnis As Folder Dim sDicName As String
Set Verzeichnis = fso.GetFolder(Startverzeichnis)
For Each UnterVerzeichnis In Verzeichnis.SubFolders sDicName = UnterVerzeichnis.Path Dim i As Integer Dim tempStr As String
For i% = 1 To Len(sDicName$) ' look for the "" If Right(sDicName$, 1) = "" Then sDicName$ = Left(sDicName$, Len(sDicName$) - 1) End If
tempStr$ = Right$(sDicName$, i%)
If Left$(tempStr$, 1) = "" Then sDicName$ = Right$(sDicName$, Len(sDicName$) - i%) sDirs = sDirs & sDicName$ & vbCrLf Exit Function End If Next i
Next
End Function [/code]
RedShark Poster
Anmeldedatum: 01.07.2008 Beiträge: 145
Antwort Verfasst am: 05.07.2008, 18:58
Hi, versuchs mal mit folgender Funktion Visual Basic: [code]Public Function FindSubFolders(ByVal FolderSpec As String) On Error Resume Next
Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") Dim F, F1, sf Set F = FSO.GetFolder(FolderSpec) Set sf = F.SubFolders For Each F1 In sf FindSubFolders= F1.Path If Right(AktuellerOrdner, 1) <> "" Then FindSubFolders = FindSubFolders & "*.*" Else FindSubFolders = FindSubFolders & "*.*" End If
DoEvents Next End Sub[/code]
slacker Newbie
Anmeldedatum: 28.06.2008 Beiträge: 14
Verfasst am: 05.07.2008, 20:56
hmm verstehe die FUnktion nicht ganz (liegt daran dass ich keine Ahnung von FSO habe. Kann mir die jmd eklären die Funtion was die genau macht?
weil wenn ich zB als pfad C:Programme eingebe spuckt er mir das hier raus: C:ProgrammeWindowsUpdate*.* also immer nur ein ordner... warum?