Writing CGI Scripts for a Web Server

WSH scripts have the potential to produce quite capable CGI programs for use with web servers: programs that are run by web-server software to generate dynamic web content. For example, CGI programs can be used to process data entered in web-based fill-out forms or to read data from files and produce web content on the fly.

Although a full discussion of CGI programming is beyond the scope of this book, there are some routines that are necessary to accomplish some basic CGI tasks with WSH scripts.

First, you’ll have to edit your file types (see Chapter 4) and reassociate the .vbs file extension with cscript.exe (the command-line based script engine), rather than the default Windows-based engine, wscript.exe. You should also check with your web server’s documentation to see if any additional configuration is necessary. If you prefer, you can choose a new extension, such as .cgi, .vbc, or .twinkie, to be associated with cscript.exe.

Then, include the following routines in your CGI scripts:

Sub PrintHeader(  )
  WScript.Echo "Content-type=text/html"
  WScript.Echo
End Sub

Sub Send(OutText)
  WScript.Echo OutText
End Sub

Function Environment(EnviroName)
  Set WshShell = Wscript.CreateObject("Wscript.Shell")
  Set EnvHandle = WshShell.Environment("Process")
  Environment = EnvHandle(EnviroName)
End Function

Warning

If you don’t use PrintHeader before the first Send in a script, your web server (and browser) will complain about a server configuration error (error 505). ...

Get Windows Me Annoyances now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.