Tutorials: Using the File System Object

Introduction
The File System Object gives access to various file management and information functions.

The following will hopefully give you some clues to using the FSO with DesktopX.

Getting the FSO 'into' a DesktopX Object
To start using the FSO you need to give your script access to it by loading it in using the VBScript Set function.

When I am finished with an object which is loaded using the Set command, I make a habit of setting it back to Nothing when I'm done with it.

Dim fso Sub your_fso_subroutine Set fso = CreateObject("Scripting.FileSystemObject") 'Your fso commands here Set fso = Nothing End Sub

Playing with a single file object
Dim fso Sub your_fso_subroutine Set fso = CreateObject("Scripting.FileSystemObject") 'Use the fso.CreateTextFile method to create a file for our script purposes fso.CreateTextFile("c:\testfile.txt") 'Create a file object that points to this file. Set o_file = fso.GetFile("c:\testfile.txt") 'o_file now contains an object reference to the file specified in the quotes. 'you can call on the properties of the file using 'o_file' similar to how you would with a DesktopX object. 'Some properties name = o_file.Name                 'returns file name as string date_created = o_file.DateCreated  'returns date created as string 'A method o_file.Copy("c:\windows\temp\")    'makes a copy of the file linked to o_file to the quoted directory Set o_file = Nothing Set fso = Nothing End Sub There are many other properties and methods you can access through an FSO file object. You can do the same with individual folders using the GetFolder method.

Using the fso. object on it's own
You don't need to create a file or folder object to carry out queries/commands. The fso object has a number of methods and properties of it's own you can invoke to carry out file management tasks.

The following creates a text file, checks if it exists and if it does, copies it to the windows directory, then deletes both copies. Dim fso Sub your_fso_subroutine Set fso = CreateObject("Scripting.FileSystemObject") fso.CreateTextFile("c:\testfile.txt", True) If fso.FileExists("c:\testfile.txt") = True then fso.CopyFile "c:\testfile.txt","c:\windows\" fso.DeleteFile("c:\testfile.txt") fso.DeleteFile("c:\windows\testfile.txt") End If Set o_file = Nothing Set fso = Nothing End Sub

FSO MSDN library
Although it can be a little overwhelming, all the FSO methods and properties, as well as the subset objects (like a file or folder object) that can be created with an FSO object are documented on the | MSDN library