VBScript Status Property
last modified April 9, 2025
The Status
property in VBScript is used to check the status of
various operations, particularly in file handling. It returns a numeric value
indicating success or failure of an operation. This property is commonly
available in objects like File
and Folder
from the
FileSystemObject
.
The Status
property helps in error handling and operation
verification. It provides immediate feedback about the state of an object or
operation. Understanding this property is crucial for robust script development.
Status Property Overview
The Status
property typically returns 0 for success and non-zero
for errors. Different objects may have specific status codes with particular
meanings. It's often used after operations that might fail, like file copies or
deletes.
Key features include immediate operation feedback and simple error detection. The property doesn't throw exceptions but provides status codes. It's available in several VBScript objects for consistent error handling.
Checking File Copy Status
This example demonstrates using the Status
property after a file
copy operation. It shows how to verify if the copy succeeded. The status is
checked immediately after the copy attempt.
Set fso = CreateObject("Scripting.FileSystemObject") Set sourceFile = fso.GetFile("C:\temp\source.txt") sourceFile.Copy "C:\temp\destination.txt" If sourceFile.Status = 0 Then WScript.Echo "File copied successfully" Else WScript.Echo "Copy failed with status: " & sourceFile.Status End If Set fso = Nothing
The script attempts to copy a file and checks the Status
property.
A status of 0 indicates success, while other values indicate errors. This
provides immediate feedback about the operation's outcome.
Verifying File Delete Operation
This example shows how to use the Status
property after deleting a
file. It demonstrates error handling for file operations. The status check helps
confirm the deletion was successful.
Set fso = CreateObject("Scripting.FileSystemObject") Set fileToDelete = fso.GetFile("C:\temp\oldfile.txt") fileToDelete.Delete If fileToDelete.Status = 0 Then WScript.Echo "File deleted successfully" Else WScript.Echo "Delete failed with status: " & fileToDelete.Status End If Set fso = Nothing
After attempting to delete a file, the script checks the Status
property. This immediate verification helps identify issues like permission
problems. The status code provides specific information about the operation's
outcome.
Checking Folder Creation Status
This example demonstrates using the Status
property with folder
operations. It shows how to verify if a folder was created successfully. The
status check occurs right after the creation attempt.
Set fso = CreateObject("Scripting.FileSystemObject") Set newFolder = fso.CreateFolder("C:\temp\newfolder") If newFolder.Status = 0 Then WScript.Echo "Folder created successfully" Else WScript.Echo "Folder creation failed with status: " & newFolder.Status End If Set fso = Nothing
The script creates a new folder and checks its Status
property.
This helps detect issues like existing folders or permission problems. The status
check provides immediate feedback about the operation.
Verifying File Attribute Changes
This example shows using the Status
property after modifying file
attributes. It demonstrates how to confirm attribute changes were applied
successfully. The status check occurs after setting the attributes.
Set fso = CreateObject("Scripting.FileSystemObject") Set myFile = fso.GetFile("C:\temp\test.txt") myFile.Attributes = myFile.Attributes Or 1 ' Set read-only If myFile.Status = 0 Then WScript.Echo "Attributes changed successfully" Else WScript.Echo "Attribute change failed with status: " & myFile.Status End If Set fso = Nothing
After attempting to change file attributes, the script checks the
Status
property. This helps verify the operation succeeded. The
status code provides specific information about any issues encountered.
Handling Multiple Operations Status
This example demonstrates checking Status
after multiple file
operations. It shows how to track the status of sequential operations. Each
operation's status is checked individually.
Set fso = CreateObject("Scripting.FileSystemObject") Set myFile = fso.CreateTextFile("C:\temp\log.txt") If myFile.Status = 0 Then WScript.Echo "File created" myFile.WriteLine "Test log entry" If myFile.Status = 0 Then WScript.Echo "Write succeeded" myFile.Close If myFile.Status = 0 Then WScript.Echo "Close succeeded" Set fso = Nothing
The script performs multiple file operations and checks Status
after each. This granular approach helps identify exactly where failures occur.
Each status check provides feedback about that specific operation's success.
Source
FileSystemObject Documentation
In this article, we have explored the Status
property in VBScript,
covering its usage and practical applications. From file operations to folder
management, these examples demonstrate reliable status checking. With this
knowledge, you can enhance your scripts with robust error handling.
Author
List all VBScript tutorials.