VBScript

During a period of just over two years, VBScript advanced from version 1.0 to 2.0, and over that time it gained support from Windows system administrators seeking an automation tool more powerful than the batch language first developed in the early 1980s.

It would henceforth be supported by Microsoft's Sustaining Engineering Team, who are responsible for bug fixes and security enhancements.

The HTML in the file is used to generate the user interface, and a scripting language such as VBScript is used for the program logic.

[13] Notable features include: A "procedure" is the main construct in VBScript for separating code into smaller modules.

As a memory aid in coding, and certainly for readability, there are a large number of constants, such as True and False for logical values, vbOKCancel and vbYesNo for MsgBox codes, vbBlack and vbYellow for color values, vbCR for the carriage return character, and many others.

Database access is made possible through ActiveX Data Objects (ADO), and the IIS Metabase can be manipulated using the GetObject() function with sufficient permissions (useful for creating and destroying sites and virtual directories).

[14][15] Programmers can utilize the extensibility via COM (ActiveX) modules to specifically equip the Script Host and VBScript with required or desired functions.

The "VTool" component, for instance, adds a number of dialog windows, binary file access, and other functionality.

For debugging purposes the Microsoft Script Debugger can still be used in current Windows versions, even though the tool has not been updated in years.

There are VBScript debuggers available from third-party sources,[17][18] and many text editors offer syntax highlighting for the language.

The hierarchical DBMS InterSystems Caché (which has its roots in the language MUMPS) also supports an implementation of VBScript, Cache BASIC, for programming stored code.

[21] VBScript omits several useful features of the full Visual Basic, such as strong typing, extended error trapping and the ability to pass a variable number of parameters to a subroutine.

However, its use is relatively widespread because it is easy to learn and because those who implement code in the language need not pay royalties to Microsoft as long as the VBScript trade mark is acknowledged.

[citation needed] When an organization licenses Visual Basic for Applications (VBA) from Microsoft, as companies such as Autodesk, StatSoft, Great Plains Accounting and Visio (subsequently acquired by Microsoft) have done, it is allowed to redistribute the full VBA code-writing and debugging environment with its product.

VBScript can also be used to create malware and viruses, such as the ILOVEYOU worm that spread through email attachment in Outlook 97 that cost billions of dollars.