一种页面静音的方法及装置制造方法及图纸

技术编号:10643370 阅读:80 留言:0更新日期:2014-11-12 17:10
本发明专利技术适用于互联网技术领域,提供了一种页面静音的方法及装置,所述方法包括:调用动态链接库中的第一函数以创建接口;在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口;在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调用的所述第三函数设置静音。通过本发明专利技术,可有效解决webkit内核下页面静音失效的问题。

【技术实现步骤摘要】

本专利技术属于互联网
,尤其涉及一种webkit内核下页面静音的方法及装置
技术介绍
目前主流浏览器都提供有页面静音功能,通过控制与声音播放相关的浏览器进程,可以对当前浏览页面进行静音。然而,在webkit内核下,某些页面(例如QQ空间)与声音播放相关的进程是一个独立的进程,即声音播放等过程不在webkit进程内,导致在webkit内核下无法对所述页面进行静音控制。
技术实现思路
本专利技术实施例的目的在于提供一种页面静音的方法,以解决现有技术在webkit内核下页面静音失效的问题。本专利技术实施例是这样实现的,一种页面静音的方法,所述方法包括:调用动态链接库中的第一函数以创建接口;在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口;在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调用的所述第三函数设置静音。本专利技术实施例的另一目的在于提供一种页面静音的装置,所述装置包括:第一调用单元,用于调用动态链接库中的第一函数以创建接口;第二调用单元,用于在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口;静音单元,用于在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调用的所述第三函数设置静音。本专利技术实施例与现有技术相比存在的有益效果是:本专利技术实施例通过创建接口,调用接口中的静音函数(即第三函数)来控制与声音播放相关的进程,进而达到页面静音的效果,有效解决webkit内核下页面静音失效的问题。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一提供的页面静音方法的实现流程图;图2是本专利技术实施例二提供的页面静音方法的具体流程图;图3是本专利技术实施例三提供的页面静音装置的组成结构图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。为了更好的理解本专利技术实施例,下面对本专利技术实施例中出现的一些概念进行下说明:COM,即组件对象模型,以WIN32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行代码组成,给应用程序、操作系统以及其他组件提供服务。在COM构架下,用户可以开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。钩子(Hook),是一个处理消息的程序段,用于监视指定窗口的某种消息,所监视的窗口可以是其他进程所创建的。每当特定的消息发出,在没有到达目标窗口前,Hook先捕获该消息,即Hook先得到控制权,可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。为了说明本专利技术所述的技术方案,下面通过具体实施例来进行说明。实施例一:图1示出了本专利技术实施例一提供的页面静音方法的实现流程,该方法过程详述如下:在步骤S101中,调用动态链接库中的第一函数以创建接口。在本实施例中,调用动态链接库(如ole32.dll)中的第一函数(例如CoCreateInstanceEx函数)具体过程包括:创建第一函数,所述创建的第一函数与所述动态链接库中的第一函数含有相同的参数;将所述动态链接库中的第一函数的指针替换为所创建的第一函数的指针,以完成对所述动态链接库中第一函数的HooK。本实施例HooK所述动态链接库中第一函数的目的在于使得后续对所述动态链接库中第一函数的调用都会进入所创建的第一函数中,方便对所述动态链接库中第一函数调用过程的控制。其中,动态链接库中第一函数的原型示例如下:HRESULT CoCreateInstanceEx(REFCLSID rclsid,//待创建的COM的类标识符IUnknown*punkOuter,//指向接口IUnknown的指针DWORD dwClsCtx,//运行可执行代码的上下文COSERVERINFO*pServerInfo,//要创建COM的机器的信息。如果该值为NULL,表示COM在本地机器上创建。否则在注册表中RemoteServerName键描述的机器上创建ULONG cmq,//pResults中MULTI_QI结构体的数目MULTI_QI*pResults//MULTI_QI结构的数组,返回的已经创建好的COM);本实施例创建的第一函数与所述动态链接库中的第一函数含有相同的参数,例如创建的CoCreateInstanceEx函数参数包括(REFCLSID,IUnknown*,DWORD,COSERVERINFO*,ULONG,MULTI_QI*)。在步骤S102中,在创建的所述接口为第一接口(如IUnknown接口)时,调用所述第一接口中的第二函数创建接口。在本实施例中,所述调用所述第一接口中的第二函数创建接口具体包括:创建第二函数(如QueryInterface函数),所述创建的第二函数与所述第一接口中的第二函数含有相同的参数;将所述第一接口中的第二函数的指针替换为所创建的第二函数的指针。以步骤S101中创建的CoCreateInstanceEx函数为例,创建的CoCreateInstanceEx函数中最后一个参数类型定义如下:其中pIID与pItf都是数组指针,他们的大小相同,数据相对应。pIID通知待创建的COM类型,pItf返回创建好的COM指针。本实施例通过调用动态链接库中的CoCreateInstanceEx函数,之后遍历pIID中的所有IID,如果找到IID_IUnknown,则pItf中与之对应的IUnknown*是系统返回的创建好的COM接口指针。此时通过创建的QueryInterface函数的指针替换IUnknown接口中的QueryInterface函数指针,即完成对IUnknown接口中QueryInterface函数的HooK。其中,创建的QueryInterface函数与IUnknown接口中QueryInterface函数含有相同的参数,即QueryInterface(REFIID,void**),功能本文档来自技高网...
一种页面静音的方法及装置

【技术保护点】
一种页面静音的方法,其特征在于,所述方法包括:调用动态链接库中的第一函数以创建接口;在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口;在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调用的所述第三函数设置静音。

【技术特征摘要】
1.一种页面静音的方法,其特征在于,所述方法包括:
调用动态链接库中的第一函数以创建接口;
在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接
口;
在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函
数,通过调用的所述第三函数设置静音。
2.如权利要求1所述的方法,其特征在于,所述调用动态链接库中的第一
函数以创建接口包括:
创建第一函数,所述创建的第一函数与所述动态链接库中的第一函数含有
相同的参数;
将所述动态链接库中的第一函数的指针替换为所创建的第一函数的指针。
3.如权利要求1所述的方法,其特征在于,所述调用所述第一接口中的第
二函数以创建接口包括:
创建第二函数,所述创建的第二函数与所述第一接口中的第二函数含有相
同的参数;
将所述第一接口中的第二函数的指针替换为所创建的第二函数的指针。
4.如权利要求1所述的方法,其特征在于,所述调用所述第二接口中的第
三函数,通过调用的所述第三函数设置静音包括:
创建第三函数,所述创建的第三函数与所述第二接口中的第三函数含有相
同的参数;
将所述第二接口中的第三函数的指针替换为所创建的第三函数的指针;
在所创建的第三函数内,调用所述第二接口中的第三函数,通过调用的所
述第三函数设置静音。
5.如权利要求1或4所述的方法,其特征在于,所述通过调用的所述第三

\t函数设置静音包括:
通过调用所述第三函数的第一子函数设置静音。
6.一种页面静音的...

【专利技术属性】
技术研发人员:尚子峰关亮亮
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1