use IDispatchPtr (<comip.h>) that is _com_ptr_t internally and its operator& is
<comip.h>
_com_ptr_t
operator&
Interface** operator&() throw() { _Release(); m_pInterface = NULL; return &m_pInterface; }