Microsoft KB Archive/163009

= DOC: Values for Scripting Object Constants Defined =

Article ID: 163009

Article Last Modified on 5/2/2006

-

APPLIES TO


 * Microsoft Active Server Pages 4.0
 * Microsoft Internet Information Server 4.0
 * Microsoft Internet Information Services 5.0

-



This article was previously published under Q163009



We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 6.0 running on Microsoft Windows Server 2003. IIS 6.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site:

http://www.microsoft.com/technet/security/prodtech/IIS.mspx



SUMMARY
The version of VBScript (VBS) provided with Active Server Pages currently does not have access to the values of constants defined by the Scripting object. As a result, you must provide a definition of the constants you wish to use in your scripts. Because the documentation does not provide the values for these constants, it can be difficult to determine what the numerical value is for a given constant.

Consider the following code example:

Set fs = Server.CreateObject("Scripting.FileSystemObject") Set a = fs.OpenTextFile("c:\testfile.txt", ForAppending, FALSE) If you cut and paste this code into an .asp file, you get the following error because VBS doesn't recognize "ForAppending":

Microsoft VBScript runtime error '800a0005' Invalid procedure call or argument: 'fs.OpenTextFile'

The best approach is to use a server-side include file to provide a definition of the constants for your script. This is similar to using the Adovbs.inc or Adojavas.inc files provided with ADO.



MORE INFORMATION
Here is a list of the values of the most commonly used constants for the Scripting object:

iomode
 * ForAppending = 8
 * ForReading = 1
 * ForWriting = 2

format
 * TristateFalse = 0
 * TristateMixed = -2
 * TristateTrue = -1
 * TristateUseDefault = -2

These are determined by viewing the Microsoft Scripting Runtime type library, contained in Scrrun.dll, in the Visual Basic Object Browser.

To provide an include file that defines these values, paste the text below into a file called Filevbs.inc, and save it to a virtual root. Then add an include directive, similar to the one below, to the ASP file that needs to access the definitions of these constants. (Save the text below to file: Filevbs.inc) <%  '--   '   ' FileSystemObject constants include file for VBScript '  '->   ' iomode Values Const ForAppending = 8 Const ForReading = 1 Const ForWriting = 2

' format Values Const TristateFalse = 0 Const TristateMixed = -2 Const TristateTrue = -1 Const TristateUseDefault = -2 %>

