Using Microsoft's Script Control 1.0 in Delphi 3

Has anyone tried using Microsoft's Script Control (Msscript.ocx) in
Delphi 3 with any success?

I've found the Eval method to work fine, however, I'm experiencing
problems in two other areas:

    1. The Run method uses a PSafeArray (defined in the ActiveX unit)
for the Parameters.  When I set up an empty PSafeArray (I'm not using
any Parameters) I receive an Access Violation.
    2. When attempting to used the AddObject method, it requires an
IDispatch parameter type.  How do you typecast a Variant into an
IDispatch? Or return the IDispatch of the Variant object, created with
CreateOleObject?

-- EJS