VBScript Help Method
last modified April 9, 2025
The Help
method in VBScript is part of the Windows Script Host
(WSH) object model. It displays help information for a script when executed with
the /? parameter. This method provides a standard way to implement command-line
help in VBScript files. It's commonly used to document script usage and options.
Help
allows script authors to provide context-sensitive help to
users. When called, it displays the help text and exits the script. This
tutorial covers Help
with practical examples to demonstrate its
usage in various scenarios.
Help Method Overview
The Help
method is available through the WScript
object in VBScript. It takes a string parameter containing the help text to
display. When invoked, it shows the help message and terminates script
execution. This provides a consistent help experience across scripts.
Key features include automatic command-line parameter handling and standardized help display. The method is triggered by the /? switch when running the script. Understanding this method helps create user-friendly command-line scripts. It's particularly useful for administrative scripts and tools.
Basic Help Implementation
This example demonstrates the simplest use of Help
to display basic
script information. It shows how to check for the help request and respond
appropriately. The script exits after displaying the help text.
If WScript.Arguments.Named.Exists("?") Then helpText = "Usage: basic_help.vbs [options]" & vbCrLf & _ "Options:" & vbCrLf & _ "/param1 First parameter" & vbCrLf & _ "/param2 Second parameter" WScript.Echo helpText WScript.Quit End If ' Main script logic would go here WScript.Echo "Script is running..."
The script checks for the /? parameter using WScript.Arguments.Named
.
If found, it displays the help text and exits. The help text includes usage
instructions and parameter descriptions. Without the help flag, normal execution
continues.
Advanced Help with Sections
This example shows a more sophisticated help implementation with multiple sections. It demonstrates formatting help text for better readability. The help includes description, usage, and examples sections.
If WScript.Arguments.Named.Exists("?") Then helpText = "FILE PROCESSOR SCRIPT" & vbCrLf & vbCrLf & _ "Description:" & vbCrLf & _ " Processes input files according to specified parameters" & vbCrLf & vbCrLf & _ "Usage:" & vbCrLf & _ " advanced_help.vbs /input:file /output:dir [/verbose]" & vbCrLf & vbCrLf & _ "Parameters:" & vbCrLf & _ " /input Specifies input file path" & vbCrLf & _ " /output Specifies output directory" & vbCrLf & _ " /verbose Enables detailed logging" WScript.Echo helpText WScript.Quit End If ' Main script processing would go here
The help text is organized into clear sections with proper spacing. Each parameter gets its own line with a description. This format makes the help information easier to read and understand. The script exits after displaying the help message.
Context-Sensitive Help
This example demonstrates context-sensitive help that changes based on provided parameters. It shows different help messages for different help requests. The script tailors the help output to what the user might need.
If WScript.Arguments.Named.Exists("?") Then If WScript.Arguments.Named.Exists("basic") Then helpText = "Basic Usage:" & vbCrLf & _ "context_help.vbs /input:file" ElseIf WScript.Arguments.Named.Exists("advanced") Then helpText = "Advanced Usage:" & vbCrLf & _ "context_help.vbs /input:file /output:dir" & vbCrLf & _ "/mode:fast|normal|thorough" Else helpText = "General Help:" & vbCrLf & _ "Use /?basic for basic help" & vbCrLf & _ "Use /?advanced for advanced options" End If WScript.Echo helpText WScript.Quit End If ' Main script processing
The script checks for additional parameters after the help request. Different help messages are shown based on these parameters. This allows for tiered help documentation within a single script. Users can request more detailed help as needed.
Help with Example Usage
This example includes practical usage examples in the help text. It demonstrates how to show sample command lines that users can copy and modify. Examples help users understand how to apply the parameters.
If WScript.Arguments.Named.Exists("?") Then helpText = "DATABASE BACKUP SCRIPT" & vbCrLf & vbCrLf & _ "Usage:" & vbCrLf & _ "example_help.vbs /server:name /db:database [/compress]" & vbCrLf & vbCrLf & _ "Examples:" & vbCrLf & _ "1. Basic backup:" & vbCrLf & _ " example_help.vbs /server:SQL01 /db:Customers" & vbCrLf & _ "2. Compressed backup:" & vbCrLf & _ " example_help.vbs /server:SQL02 /db:Orders /compress" WScript.Echo helpText WScript.Quit End If ' Database backup logic would go here
The help text includes both parameter descriptions and concrete examples. Each example shows a complete command line with different options. This approach helps users quickly understand how to use the script. The examples demonstrate common usage patterns.
Localized Help Text
This example shows how to implement localized help text based on system settings. It demonstrates checking the system locale and displaying appropriate help. This technique is useful for multilingual script distribution.
Set shell = CreateObject("WScript.Shell") locale = shell.RegRead("HKCU\Control Panel\International\Locale") If WScript.Arguments.Named.Exists("?") Then If Left(locale, 4) = "0409" Then ' English helpText = "Usage: script.vbs /param:value" ElseIf Left(locale, 4) = "040C" Then ' French helpText = "Utilisation: script.vbs /param:valeur" Else ' Default to English helpText = "Usage: script.vps /param:value" End If WScript.Echo helpText WScript.Quit End If ' Main script processing Set shell = Nothing
The script reads the system locale from the registry. Based on the locale ID, it displays help text in the appropriate language. This provides a better user experience for non-English speakers. The example shows English and French variants.
Source
In this article, we have explored the Help
method in VBScript,
covering its usage and practical applications. From basic help implementations
to advanced context-sensitive help, these examples demonstrate effective script
documentation. With this knowledge, you can create more user-friendly command-
line scripts with comprehensive help systems.
Author
List all VBScript tutorials.