>>You need to set it up as a pointer to a BSTR (double reference) and then mark it as [IN,OUT].
>
>I didn't get it changed in all three places (.cpp, .h and .idl). Once I did it worked great.
If you change this in the Class view the changes should propagate all the way through the interfaces and implementation code.