No announcement yet.

suppress errors in vbscript

  • Filter
  • Time
  • Show
Clear All
new posts

  • suppress errors in vbscript

    is there a way to make a vbscript silently fail?

    for example- let's say i want to read a folder, if the folder doen't exist the script
    outputs an error dialog.

    what i'm looking for is a way for the script to continue without this notification.

    thank you.

  • #2
    Re: suppress errors in vbscript

    Have you tried adding:

    on error resume next
    ahead of the portion where you wish to disable the output of an error message should one occur and then put a:

    on error goto 0
    when you wish to return to default behavior?

    Per the Windows Scripting help file:

    Enables or disables error-handling.

    On Error Resume Next
    On Error GoTo 0


    If you don't use an On Error Resume Next statement anywhere in your code, any run-time error that occurs can cause an error message to be displayed and code execution stopped. However, the host running the code determines the exact behavior. The host can sometimes opt to handle such errors differently. In some cases, the script debugger may be invoked at the point of the error. In still other cases, there may be no apparent indication that any error occurred because the host does not to notify the user. Again, this is purely a function of how the host handles any errors that occur.

    Within any particular procedure, an error is not necessarily fatal as long as error-handling is enabled somewhere along the call stack. If local error-handling is not enabled in a procedure and an error occurs, control is passed back through the call stack until a procedure with error-handling enabled is found and the error is handled at that point. If no procedure in the call stack is found to have error-handling enabled, an error message is displayed at that point and execution stops or the host handles the error as appropriate.

    On Error Resume Next causes execution to continue with the statement immediately following the statement that caused the run-time error, or with the statement immediately following the most recent call out of the procedure containing the On Error Resume Next statement. This allows execution to continue despite a run-time error. You can then build the error-handling routine inline within the procedure.

    An On Error Resume Next statement becomes inactive when another procedure is called, so you should execute an On Error Resume Next statement in each called routine if you want inline error handling within that routine. When a procedure is exited, the error-handling capability reverts to whatever error-handling was in place before entering the exited procedure.

    Use On Error GoTo 0 to disable error handling if you have previously enabled it using On Error Resume Next.

    The following example illustrates use of the On Error Resume Next statement.

    On Error Resume Next
    Err.Raise 6 ' Raise an overflow error.
    MsgBox "Error # " & CStr(Err.Number) & " " & Err.Description
    Err.Clear ' Clear the error.


    ** Remember to give credit where credit is due and leave reputation points sigpic where appropriate **

    2006-2099 R Valstar. This post is offered "as is" for discussion purposes only with no express or implied warranty of any kind including, but not limited to, correctness or fitness for use. Nothing herein shall be construed as advice. Attempting any activity based on information in this post is done at your own risk.