VBScript GetFolder Method
last modified April 9, 2025
The GetFolder
method in VBScript is part of the
FileSystemObject
. It returns a Folder object corresponding to the
specified path. This method allows access to folder properties and contents.
It's essential for directory management and file system operations in VBScript.
GetFolder
requires the folder path to exist; otherwise it throws an
error. It provides access to folder attributes, files, and subfolders. This
tutorial covers GetFolder
with practical examples to demonstrate
its usage in various scenarios.
GetFolder Method Overview
The GetFolder
method takes one parameter: the path to an existing
folder. It returns a Folder object with properties and methods for folder
manipulation. The method is available through the FileSystemObject
in VBScript.
Key features include access to folder attributes, size, and contents. The Folder
object provides methods for copying, moving, and deleting folders.
GetFolder
is fundamental for any folder-related operations in
VBScript automation scripts.
Basic Folder Information
This example demonstrates basic usage of GetFolder
to retrieve
folder properties. It shows how to access common folder attributes like name,
path, and creation date. The script displays information about a specified
folder.
Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder("C:\Temp") WScript.Echo "Folder Name: " & folder.Name WScript.Echo "Path: " & folder.Path WScript.Echo "Date Created: " & folder.DateCreated WScript.Echo "Size: " & folder.Size & " bytes" Set folder = Nothing Set fso = Nothing
The script creates a FileSystemObject
and calls
GetFolder
for "C:\Temp". It then displays basic folder properties.
Note that Size
includes all files and subfolders recursively.
Listing Folder Contents
This example shows how to list all files in a folder using
GetFolder
. It demonstrates accessing the Files collection of the
Folder object. Each file's name and size are displayed.
Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder("C:\Temp") WScript.Echo "Files in " & folder.Path & ":" For Each file In folder.Files WScript.Echo file.Name & " - " & file.Size & " bytes" Next Set folder = Nothing Set fso = Nothing
The script retrieves all files in "C:\Temp" and iterates through the Files collection. For each file, it displays the name and size. This pattern is useful for file processing scripts and directory listings.
Working with Subfolders
GetFolder
can access subfolders through the SubFolders collection.
This example demonstrates enumerating all subfolders of a given folder. Each
subfolder's name and creation date are displayed.
Set fso = CreateObject("Scripting.FileSystemObject") Set folder = fso.GetFolder("C:\Program Files") WScript.Echo "Subfolders in " & folder.Path & ":" For Each subfolder In folder.SubFolders WScript.Echo subfolder.Name & " - Created: " & subfolder.DateCreated Next Set folder = Nothing Set fso = Nothing
The script lists all subfolders in "C:\Program Files". The SubFolders collection provides access to all immediate child folders. This is useful for recursive directory processing or folder structure analysis.
Checking Folder Existence
This example shows how to safely check if a folder exists before calling
GetFolder
. It demonstrates error handling to avoid runtime errors
when folders don't exist. The FolderExists method is used for verification.
Set fso = CreateObject("Scripting.FileSystemObject") folderPath = "C:\NonexistentFolder" If fso.FolderExists(folderPath) Then Set folder = fso.GetFolder(folderPath) WScript.Echo "Folder found: " & folder.Path Else WScript.Echo "Folder does not exist: " & folderPath End If Set fso = Nothing
The script first checks if the folder exists using FolderExists
.
This prevents errors when calling GetFolder
on nonexistent paths.
This pattern is essential for robust folder handling in scripts.
Copying a Folder
This example demonstrates using GetFolder
to perform folder
operations. It shows how to copy a folder and its contents to a new location.
The Copy method of the Folder object is used for the operation.
Set fso = CreateObject("Scripting.FileSystemObject") sourcePath = "C:\Temp\Source" destPath = "C:\Temp\Destination" If fso.FolderExists(sourcePath) Then Set sourceFolder = fso.GetFolder(sourcePath) sourceFolder.Copy destPath WScript.Echo "Folder copied successfully" Else WScript.Echo "Source folder not found" End If Set fso = Nothing
The script copies "C:\Temp\Source" to "C:\Temp\Destination". The Copy method handles all contents recursively. Note that the destination folder must not exist for the operation to succeed.
Source
FileSystemObject Documentation
In this article, we have explored the GetFolder
method in VBScript,
covering its usage and practical applications. From basic folder information to
complex operations like copying, these examples demonstrate essential folder
management techniques. With this knowledge, you can enhance your scripts with
powerful directory handling capabilities.
Author
List all VBScript tutorials.