9.7 Manipulating Internet Explorer from Scripts

Because VBScript owes its existence, in part, to Internet Explorer (IE), it seems only fair that there would be some integration between WSH and IE. The key is the Internet Explorer object and the properties and methods associated with it.

Note that the code in this section is not presented as a subroutine, mostly because all of the subsequent statements that reference the IEObject object (such as IEObject.Document.Write) would fail if the initial Set statement was isolated in it's own routine.

Begin with the following lines in your script, which start the Internet Explorer application, initialize an object to reference, and open a blank IE window:

Set IEObject = CreateObject("InternetExplorer.Application") If Err.number <> 0 Then   MsgBox "There was a problem starting Internet Explorer."   wScript.Quit End If IEObject.Left = 75 IEObject.Top = 75 IEObject.Width = 400 IEObject.Height = 300 IEObject.Menubar = 0 IEObject.Toolbar = 0 IEObject.Navigate "About:Blank" IEObject.Visible=1 Do while IEObject.Busy   Rem wait for window to open -- Loop

Note the error checking at the beginning, which quits if there's a problem loading Internet Explorer. The subsequent commands customize the window to our needs; the Left, Top, Width, and Height properties are all in pixels; for the MenuBar and Toolbar properties, 0 means hidden and 1 means visible. Lastly, the Navigate property specifies the URL to load; in this case, we specify About:Blank to show a blank page.

Once the IEObject.Visible=1 command is issued, the window appears, and the real fun begins. (Okay, maybe fun is too strong of a word.) The following lines send HTML code to the active IE window, and form a simple web page:

IEObject.Document.Write "<html>" IEObject.Document.Write "<h1>Hello World</h1>" IEObject.Document.Write "<p>" IEObject.Document.Write "<i>Aren't we sick of that phrase yet?</i>" IEObject.Document.Write "</html>"

This has nearly limitless possibilities, not the least of which is a more elegant way to display information than the MsgBox command, a much more sophisticated way of gathering information than the InputBox command (using fill-out forms), and a way to display an ongoing log of a script's activities without interrupting script flow. To clear the page at any time, simply issue another IEObject.Navigate "About:Blank" command.

Note that the IE window stays open after the script completes; use the IEObject.Quit command to close the window during script execution.



Windows XP Annoyances
Fixing Windows XP Annoyances
ISBN: 0596100531
EAN: 2147483647
Year: 2005
Pages: 78
Authors: David A. Karp

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net