In Symbian C++ whenever an asynchronous callback method is called, that is actually invoked by an active object's RunL method. So you indeed need a running CActiveScheduler here.
According to this older thread, http://developer.nokia.com/Community...-in-my-program the thing can work.
So you need something likeand assuming you have the player from #11 and modified according to #13, it should work.Code:CActiveScheduler* scheduler = new (ELeave) CActiveScheduler(); CleanupStack::PushL(scheduler); CActiveScheduler::Install(scheduler); CTonePlayer *player=CTonePlayer::NewL(); CleanupStack::PushL(player); player->Play(...); CActiveScheduler::Start();
You may want to put CActiveScheduler::Stop() into MatoPlayComplete, then the scheduler will return after playing the sound.