Computer Performance, Windows 2003, Exchange 2003, Logon Scripts

Guy recommends:
Free config generator

Solarwinds Config Generator

This CG will put you in charge of controlling changes to network routers and other SNMP devices.

Download your free Config Generator


 

VBScript - Error Handling

Introduction to Error Handling

'Best Practice' dictates that we should take steps to control errors.  Another reason for error handling is that it saves time troubleshooting when you can narrow down the problem to one section of the script.  In practice you have three, choices, write a statement that says ignore errors and carry on processing, allow errors to surface naturally, or add error handling statements (best), which will give you valuable information on where in the script the error is arising.

On Error Resume Next

What the 'On Error Resume Next' statement does is defer error handling, and suppress a system message.  The script will carry on running but you may be storing up problems.  There is counter statement called 'On Error GoTo 0'  which turns off 'On Error Resume Next'.  This means that you can have different error handling for different sections of you script.

 

 

On Error Resume Next
Err.Clear
Set objContainer = GetObject("LDAP://" & strOUContainer)

 

 

Note 1:  Without an 'On Error Resume Next' command, any run-time error will result in pop-up message box with an error message and the code will execute no further than the error.

 

Clear Method - err.Clear

Use the Clear method to explicitly reset the Err object once an error has been handled.  When you use deferred error handling with On Error Resume Next, you reset the err.raise to zero with a statement err.Clear.

Note 1: VBScript calls the Clear method whenever you Exit a Sub or Exit a function.

Example of error handling

 

 

If Err.Number <> 0 Then
Err.Clear
On Error GoTo 0
Wscript.Echo "Edit the LDAP path to your OU " & strOUContainer
Wscript.Quit
End If

 

 

Note 1:  This error handling routine uses the If ... Then ... End If construction.

Note 2:  Here is a classic use of the Wscript.Echo method.  The & strOUContainer is a neat touch to let you know in the message box exactly what is wrong with LDAP path.

Note 3:  If you actually see this error it means you need to find the variable strOUContainer and change the value to your domain.

Note 4: These error handling statements occur all through the script, each with an appropriate message.

The fact that VBScript is an interpreted language rather than a compiled language means that you can expect more runtime errors.  To trap these bugs you need to build in error handling statements which pinpoint coding errors such spelling mistakes in variables.

 


See Also

 .


Google

Webcomputerperformance.co.uk

Guy Recommends: SolarWinds Engineer's Toolset v10Engineer's Toolset v10

The Engineer's Toolset v10 provides a comprehensive console of utilities for troubleshooting computer problems.

There are so many good gadgets, it's like having free rein of a sweetshop. Thankfully the utilities are displayed logically: monitoring, discovery, diagnostic, and Cisco tools.  Download your copy of the Engineer's Toolset v 10

 

Home Copyright © 1999-2010 Computer Performance LTD All rights reserved

Please report a broken link, or an error.