*******************************************
Dreamscape Ping and Tracerout ASP Objects
*******************************************

---
Legal stuff:
Use this source file as you wish but at your own
risks (it should be pretty safe, though). What you
should NOT do is modify the source and/or release
it without giving me proper credits for it, nore 
should you sell it. I'd also like to get a copy of 
any correction or bugfix you make to the files here. 
Other than that, you're pretty much free to do as 
you wish with those files, as long as it remains 
legal...


---

Usage:

You'll need Franois Piette ICS component suit for
the exemple to compile. It's freely available (with
full source code) from: http://www.rtfm.be/fpiette/

Compile it using delphi 3.0 of later (It has been
tested with D3.02, not 4.0, but it should work).

Register the component (either using the TLB
editor or drag the dreamscape.dll on the
regsrv32.exe utility of the %system%\inetpub\
directory.

Place the test.asp file in a web directory and
access it using the HTTP or HTTPS protocol.

---
Additional notes and instructions:

-There is a "bug" in the TLB interface generated 
by the delphi 3.02 TLB editor that prevents 
the component to correctly access the cookies 
collections. This has been fixed in the TLB 
interface file included in this archive 
(ASPTypeLibrary_TLB.pas).

-Once the dll has been accessed (the object has
been created), you will be unnable to recompile it
because it will be locked by the system. To
recompile it, you must stop ALL IIS services
before proceeding. I don't know how it is done on
95/98 (probably just stoping the PWS application
will do) but stoping the web server under NT is
not enough. You must stop the following services
(use the "net stop "<servicename>"" command):
World Wide Web Publishing Service
FTP Publishing Service
IIS Admin Service

To ease that, I've included a RestartIIS.cmd shell
script that will restart the IIS web server under 
windows NT.

-If there is any modal dialog box in your
application, if you raise a system error and fail
to catch it or have any kind of modal dialog
appear anywhere in your component for any reason, 
the whole web server will hang. Don't flame me, 
ask Bill... (actually, it will not hang but just
wait untill someone presses the OK button of a
window that's in a different window station than
the ones you can access).

-If, for some reason, the web server hangs, 
you'll have to kill the inetinfo.exe process. 
You can't do that using taskmgr32 because
it doesn't have the proper right enabled. I'd
avise to use the kill.exe program that comes with
the NT resource kit.

- The global ASP objects that you'd use in a ASP
page are accessed through the IScriptingContext
passed to the OnStartPage methode. Look at this
methode for more explanation

---

Credits:
Franois Piette for the (great) ICMP code.

---

Contact:
You can contact me at: grobety@fulgan.com

---
Files included in this archive:

dreamscape_TLB.pas 	// TLB interface for the ActiveX Object
ASPTraceRT.pas
dreamscape.dpr        
dreamscape.tlb     	      // Type Library
dreamscape.res          
dreamscape_TLB.dcr       
ASPTypeLibrary_TLB.pas        // Corrected Interface to the ASP TLB. Read comments for list of changes 
ASPTypeLibrary_TLB.dcr   
Main.pas                 
ApartmentThreadingModel.pas   // Correction for D3 COM support. Read comments for more informations
Readme.txt		      // This file
test.asp		      // Test ASP file. Place it on an IIS web directory and acess it through HTTP 
RestartIIS.cmd                // NT command script that will restart the web services so that you can recompile.
