Cheers Ron! Didn't think I'd have to use query interface, but that's fine. Sean.
From: Ron Parker [mailto:r...@gwmicro.com] Sent: 08 February 2012 18:15 To: gw-scripting@gwmicro.com Subject: Re: possible idl bug I'm not sure why it returns a VARIANT, since all it ever contains is either an error or a _Key object, but that is indeed what it returns. To turn that into a _Key, you need to do: Wineyes::_Key *Temp = NULL; if ( test.vt == VT_DISPATCH && test.pdispVal ) { test.pdispVal->QueryInterface( __uuidof(*Temp), (void **)&Temp ); } (You should check for errors from QueryInterface, too, but since you weren't doing that in your call to get_Key I didn't do it in my code.) On 2/8/2012 1:06 PM, Sean Farrow wrote: Hi: I'm trying to obtain a Key from a hotkey and have the following c++ snipitt: //now obtain a key object to get the key combination. VARIANT test; Hotkey->get_Key(&test); Wineyes::_Key* Temp =(Wineyes::Key*)test; I am told that there is no suitable conversion function. The documentation states that the Key property of a hotkey returns a key object, but in c++ this is returning a variant. Is the idl incorrect, or am I not doing something I should be? Help appreciated as always. Cheers Sean.