首页
社区
课程
招聘
[求助]win7 自定义浏览器对flash声音屏蔽问题
发表于: 2011-7-27 18:01 5585

[求助]win7 自定义浏览器对flash声音屏蔽问题

2011-7-27 18:01
5585
win7 下声音屏蔽利用了令一套声音架构,与xp的不相同,一下是屏蔽本进程声音代码,,但是没达到效果,求高手指点。。。

HRESULT hr = S_OK;
        CoInitialize(NULL);
        CComPtr<IMMDeviceEnumerator> spEnumerator;
        hr = CoCreateInstance( __uuidof(MMDeviceEnumerator), NULL, CLSCTX_ALL, __uuidof(IMMDeviceEnumerator), (void**)&spEnumerator );
        CComPtr<IMMDevice> spDevice;
        hr = spEnumerator->GetDefaultAudioEndpoint( eRender, eMultimedia , &spDevice );

//         IAudioEndpointVolume *endpointVolume;
//         hr = spDevice->Activate(__uuidof(IAudioEndpointVolume), CLSCTX_INPROC_SERVER, NULL, reinterpret_cast<void **>(&endpointVolume));
//         endpointVolume->SetMute(TRUE,&AudioSessionVolumeCtx);
//         endpointVolume->SetMasterVolumeLevel(0,&AudioSessionVolumeCtx);
       
                CComPtr<IAudioSessionManager> spAudioSessionManager;
        hr = spDevice->Activate( __uuidof(IAudioSessionManager), CLSCTX_ALL, NULL, (void**)&spAudioSessionManager );

        CComPtr<IAudioSessionControl> spIAudioSessionControl;
        spAudioSessionManager->GetAudioSessionControl(&GUID_NULL,FALSE,&spIAudioSessionControl);

        CComPtr<ISimpleAudioVolume> spSimpleAudioVolume;

        spIAudioSessionControl->QueryInterface((__uuidof(ISimpleAudioVolume), &spSimpleAudioVolume));
    spSimpleAudioVolume->SetMute(TRUE, &GUID_NULL);
        hr = spSimpleAudioVolume->SetMasterVolume(0, &GUID_NULL); // 静音
         spSimpleAudioVolume->SetMute(TRUE, &GUID_NULL);

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 564
活跃值: (42)
能力值: ( LV12,RANK:230 )
在线值:
发帖
回帖
粉丝
2
spSimpleAudioVolume->SetMute(TRUE, &GUID_NULL);
中GUID_NULL是指本进程,,其实setmute的参数需要一个guid,比如百度mp3音频的一个guid,但是迷茫,不知怎么获取该guid
2011-7-27 18:06
0
游客
登录 | 注册 方可回帖
返回
//