Why does the following code fail after Speak() with error code 0x80045063 (SPERR_NOT_ACTIVE_SESSION) only when the process is running as a service? ISpVoicePtr pVoice; CoCreateInstance( CLSID_SpVoice, 0, CLSCTX_INPROC_SERVER, IID_ISpVoice, ( LPVOID * ) &pVoice ); pVoice->SetOutput( 0, TRUE ); pVoice->Speak( L"Hello", 0, NULL ); The only resources I can come [...] read more