Hi, All!

I have MS SQL 2000, and I'm working with some DCOM-server. The server object
have a method (IDL):

HRESULT _stdcall GetAddress([in, out] IAddress ** Address, [in] VARIANT_BOOL
FastMetod, [out, retval] VARIANT_BOOL * Value );

When I try to call it in Basic (in Excel VBA, for example) all is Ok and
working properly:
...
Dim mAdrReestr As New GarSrv.AdrReestr
Dim mAddress As New GarObj.Address
...
If mAdrReestr.GetAddress(mAddress, False) Then
...

When I try to do this equivalently in MS SQL, I have a problem with calling
method GetAddress:

(variables @reestr and @mAddress are corresponding objects descriptors, of
course)

EXEC @hr = sp_OAMethod @reestr, 'GetAddress', @Address=@mAddress OUTPUT,
@FastMetod=0

-2147352562
Error Source Description HelpFile
HelpID
---------- ------------------------- ------------------------------ --------
-----------
0x8002000E ODSOLE Extended Procedure Invalid number of parameters. NULL
0,00

What parameter does it need ? Is it a returnvalue, which is VARIANT_BOOL ?
I have tried like this:

DECLARE @result BIT
EXEC @hr = sp_OAMethod @reestr, 'GetAddress', @result OUTPUT,
@Address=@mAddress OUTPUT, @FastMetod=0

-2147352571
Error Source Description HelpFile HelpID
---------- ------------------------- --------------- -------- -----------
0x80020005 ODSOLE Extended Procedure Type mismatch. NULL 0,00

I have tried all data types for @result ;-) But it doesn't work ;-(
And I don't understand what's problem ?

Help me, please!