On Sun, 14 Jul 2002 15:56:07 +0100, [EMAIL PROTECTED] wrote:

>
>Anybody know a way to call a method which takes a REFCLSID, like this:
>
>HRESULT foo( REFCLSID bar );
>
>The OLE browser shows this as
>
>Sub foo( bar as GUID )
>    method foo;
>
>Unfortunately, Win32::GuidGen seems to return a GUID in string form,
>and calling foo results in an "Invalid parameter" 0x80070057 :-(

There isn't a predefined VARIANT type for GUIDs, so I wouldn't know how
this parameter needs to be passed by OLE Automation.  Looking at the
native interface is no use; you have to check the IDispatch interface to
see what parameters foo() expects.  Or does the application also define a
GUID object?  In that case you need to create an instance of that and pass
a reference to it.

Cheers,
-Jan

_______________________________________________
Perl-Win32-Users mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to