VBcoders Guest



Don't have an account yet? Register
 


Forgot Password?



A File system object example FSO

by andreas gustafsson (2 Submissions)
Category: Files/File Controls/Input/Output
Compatability: Visual Basic 3.0
Difficulty: Intermediate
Date Added: Wed 3rd February 2021
Rating: (6 Votes)

Example of the File System Object

Rate A File system object example FSO

'*************************************************
'* This program was created by andreas 
'*gustafsson. 
'* Please do not change/remove this 
'*text      '*
'* Feel free to edit the code as you 
'*wish  
'* send comments to 
'*[email protected] 
'* References: Microsoft scripting 
'*runtime  
'************************************************* Option Explicit
 Dim fso As New FileSystemObject
 'The selected drive
 Dim strDrive As String
 'The folderpath
 Dim strFolder As String
 'Collection to store the selected filepaths
 
Private Sub cmbDrives_Click()
 Dim drive As drive
 Dim File As File
 Dim SubFolder As Folder
 Dim i As Integer
 i = 0
 lstFiles.Clear
 If cmbDrives = "" Then Exit Sub
 strDrive = cmbDrives.Text
 strFolder = ""
 Set drive = fso.GetDrive(cmbDrives.Text)
 If drive.IsReady Then
 For Each File In drive.RootFolder.Files
  lstFiles.AddItem File.Name, i
  i = i + 1
 Next
 i = lstFiles.ListCount
 For Each SubFolder In _ drive.RootFolder.SubFolders
 lstFiles.AddItem SubFolder, i
 i = i + 1
 Next
 Else
 MsgBox "Drives not ready"
 End If
End Sub
'Moves to the parent folder (if any)
Private Sub cmdup_Click()
 Dim Folder As Folder
 Dim File As File
 Dim SubFolder As Folder
 Dim i As Integer
 If strDrive = "" Then Exit Sub
 If strFolder = "" Then Exit Sub
 'Get current folder
 Set Folder = fso.GetFolder(strDrive & _ strFolder)
 'Find parent folder
 strFolder = Left(strFolder, InStrRev _(strFolder, "\") - 1)
 lstFiles.Clear
 'If parent exists
 If Not Folder.ParentFolder Is Nothing Then
 'Add all files in parent
 For Each File In Folder.ParentFolder.Files
  lstFiles.AddItem File.Name, i
  i = i + 1
 Next
 i = lstFiles.ListCount
 'Add all subfolders in parent
 For Each SubFolder In _ Folder.ParentFolder.SubFolders
  lstFiles.AddItem SubFolder, i
  i = i + 1
 Next
 Else 'If it not has parent
 For Each File In Folder.Files
  lstFiles.AddItem File.Name, i
  i = i + 1
 Next
 i = lstFiles.ListCount
 For Each SubFolder In Folder.SubFolders
  lstFiles.AddItem SubFolder, i
  i = i + 1
 Next
 End If
End Sub
Private Sub Form_Load()
 Dim drive As drive
 Dim i As Integer
 i = 0
 'Add all drives to combo
 For Each drive In fso.Drives
 cmbDrives.AddItem drive.Path, i
 i = i + 1
 Next
End Sub
Private Sub Form_Unload(Cancel As Integer)
 Set fso = Nothing
End Sub
Private Sub lstFiles_Click()
 Dim Folder As Folder
 Dim SubFolder As Folder
 Dim File As File
 Dim i As Integer
 i = 0
 If Not lstFiles.SelCount > 1 Then
 'if its a folder
 If InStr(lstFiles.Text, ":\") Then
  Set Folder = fso.GetFolder _(lstFiles.Text)
  lstFiles.Clear
  strFolder = strFolder & "\" & _ Folder.Name
  'Add all files
  For Each File In Folder.Files
  lstFiles.AddItem File.Name, i
  i = i + 1
  Next
  i = lstFiles.ListCount
  'Add subfolders
  For Each SubFolder In _ Folder.SubFolders
  lstFiles.AddItem SubFolder, i
  i = i + 1
  Next
 End If
 End If
End Sub

Download this snippet    Add to My Saved Code

A File system object example FSO Comments

No comments have been posted about A File system object example FSO. Why not be the first to post a comment about A File system object example FSO.

Post your comment

Subject:
Message:
0/1000 characters