Oracle: How to pass a Cursor as an Input Parameter?

I use a TStoredProc to open a cursor returned by a
Stored Procedure's parameter.

I want to pass this same cursor as an input parameter
to another Stored Procedure.

My problem is that the ftCursor Paramater has a null value,
and the second Stored Procedure see a closed cursor.

My code is something like this ...

   ...
   pC := SP1.Params.CreateParam(ftCursor ,'C',ptInputOutput);
   SP1.Params.AddParam( pC );
   SP1.Open;
   { pC.Value returns null }
   ...
   SP2.Params.AddParam( pC );
   SP2.ExecProc; { gets a closed cursor }
   ...

   SP1.Close;
   ...

What am I doing wrong?

Delphi 5.0 Enterprise Edition
Oracle8 Enterprise Edition Release 8.0.4.0.0
DLL32: SQLORA8.DLL
VENDOR INIT: OCI.DLL

Thanks