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

文档序号:6502555阅读:88来源:国知局
一种页面静音的方法及装置制造方法
【专利摘要】本发明适用于互联网【技术领域】,提供了一种页面静音的方法及装置,所述方法包括:调用动态链接库中的第一函数以创建接口;在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口;在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调用的所述第三函数设置静音。通过本发明,可有效解决webkit内核下页面静音失效的问题。
【专利说明】一种页面静音的方法及装置

【技术领域】
[0001] 本发明属于互联网【技术领域】,尤其涉及一种webkit内核下页面静音的方法及装 置。

【背景技术】
[0002]目前主流浏览器都提供有页面静音功能,通过控制与声音播放相关的浏览器进 程,可以对当前浏览页面进行静音。
[0003] 然而,在webkit内核下,某些页面(例如QQ空间)与声音播放相关的进程是一个独 立的进程,即声音播放等过程不在webkit进程内,导致在webkit内核下无法对所述页面进 行静音控制。


【发明内容】

[0004] 本发明实施例的目的在于提供一种页面静音的方法,以解决现有技术在webkit 内核下页面静音失效的问题。
[0005] 本发明实施例是这样实现的,一种页面静音的方法,所述方法包括:
[0006] 调用动态链接库中的第一函数以创建接口 ;
[0007] 在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口 ;
[0008] 在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通 过调用的所述第三函数设置静音。
[0009] 本发明实施例的另一目的在于提供一种页面静音的装置,所述装置包括:
[0010] 第一调用单元,用于调用动态链接库中的第一函数以创建接口 ;
[0011] 第二调用单元,用于在创建的所述接口为第一接口时,调用所述第一接口中的第 二函数创建接口;
[0012] 静音单元,用于在所述第二函数创建的接口为第二接口时,调用所述第二接口中 的第三函数,通过调用的所述第三函数设置静音。
[0013] 本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过创建接口, 调用接口中的静音函数(即第三函数)来控制与声音播放相关的进程,进而达到页面静音 的效果,有效解决webkit内核下页面静音失效的问题。

【专利附图】

【附图说明】
[0014] 为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述 中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些 实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些 附图获得其他的附图。
[0015] 图1是本发明实施例一提供的页面静音方法的实现流程图;
[0016] 图2是本发明实施例二提供的页面静音方法的具体流程图;
[0017] 图3是本发明实施例三提供的页面静音装置的组成结构图。

【具体实施方式】
[0018] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并 不用于限定本发明。
[0019] 为了更好的理解本发明实施例,下面对本发明实施例中出现的一些概念进行下说 明:
[0020] COM,即组件对象模型,以WIN32动态链接库(DLL)或可执行文件(ΕΧΕ)形式发布的 可执行代码组成,给应用程序、操作系统以及其他组件提供服务。在COM构架下,用户可以 开发出各种各样的功能专一的组件,然后将它们按照需要组合起来,构成复杂的应用系统。
[0021] 钩子(Hook),是一个处理消息的程序段,用于监视指定窗口的某种消息,所监视的 窗口可以是其他进程所创建的。每当特定的消息发出,在没有到达目标窗口前,Hook先捕 获该消息,即Hook先得到控制权,可以加工处理(改变)该消息,也可以不作处理而继续传递 该消息,还可以强制结束消息的传递。
[0022] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0023] 实施例一:
[0024] 图1示出了本发明实施例一提供的页面静音方法的实现流程,该方法过程详述如 下:
[0025] 在步骤S101中,调用动态链接库中的第一函数以创建接口。
[0026] 在本实施例中,调用动态链接库(如ole32. dll)中的第一函数(例如 CoCreatelnstanceEx函数)具体过程包括:
[0027] 创建第一函数,所述创建的第一函数与所述动态链接库中的第一函数含有相同的 参数;
[0028] 将所述动态链接库中的第一函数的指针替换为所创建的第一函数的指针,以完成 对所述动态链接库中第一函数的HooK。
[0029] 本实施例HooK所述动态链接库中第一函数的目的在于使得后续对所述动态链接 库中第一函数的调用都会进入所创建的第一函数中,方便对所述动态链接库中第一函数调 用过程的控制。
[0030] 其中,动态链接库中第一函数的原型示例如下:
[0031] HRESULT CoCreatelnstanceEx(
[0032] REFCLSID rclsid, //待创建的COM的类标识符
[0033] IUnknown*punk0uter,//指向接口 IUnknown 的指针
[0034] DWORD dwClsCtx,//运行可执行代码的上下文
[0035] C0SERVERINF0*pServerInfo, //要创建COM的机器的信息。如果该值为NULL,表 示COM在本地机器上创建。否则在注册表中RemoteServerName键描述的机器上创建
[0036] UL0NG cmq, //pResults 中 MULTI_QI 结构体的数目
[0037] MULTI_QI*pResults//MULTI_QI结构的数组,返回的已经创建好的COM);
[0038] 本实施例创建的第一函数与所述动态链接库中的第一函数含有相同的参数,例如 创建的 CoCreatelnstanceEx 函数参数包括(REFCLSID, IUnknown*, DWORD, COSERVERINFO*, ULONG, MULTI_QI*)。
[0039] 在步骤S102中,在创建的所述接口为第一接口(如IUnknown接口)时,调用所述第 一接口中的第二函数创建接口。
[0040] 在本实施例中,所述调用所述第一接口中的第二函数创建接口具体包括:
[0041 ] 创建第二函数(如Querylnterface函数),所述创建的第二函数与所述第一接口中 的第二函数含有相同的参数;
[0042] 将所述第一接口中的第二函数的指针替换为所创建的第二函数的指针。
[0043] 以步骤S101中创建的CoCreatelnstanceEx函数为例,创建的 CoCreatelnstanceEx函数中最后一个参数类型定义如下:
[0044]

【权利要求】
1. 一种页面静音的方法,其特征在于,所述方法包括: 调用动态链接库中的第一函数以创建接口; 在创建的所述接口为第一接口时,调用所述第一接口中的第二函数创建接口; 在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第三函数,通过调 用的所述第三函数设置静音。
2.如权利要求1所述的方法,其特征在于,所述调用动态链接库中的第一函数以创建 接口包括: 创建第一函数,所述创建的第一函数与所述动态链接库中的第一函数含有相同的参 数; 将所述动态链接库中的第一函数的指针替换为所创建的第一函数的指针。
3.如权利要求1所述的方法,其特征在于,所述调用所述第一接口中的第二函数以创 建接口包括: 创建第二函数,所述创建的第二函数与所述第一接口中的第二函数含有相同的参数; 将所述第一接口中的第二函数的指针替换为所创建的第二函数的指针。
4.如权利要求1所述的方法,其特征在于,所述调用所述第二接口中的第三函数,通过 调用的所述第三函数设置静音包括: 创建第三函数,所述创建的第三函数与所述第二接口中的第三函数含有相同的参数; 将所述第二接口中的第三函数的指针替换为所创建的第三函数的指针; 在所创建的第三函数内,调用所述第二接口中的第三函数,通过调用的所述第三函数 设置静音。
5.如权利要求1或4所述的方法,其特征在于,所述通过调用的所述第三函数设置静音 包括: 通过调用所述第三函数的第一子函数设置静音。
6. 一种页面静音的装置,其特征在于,所述装置包括: 第一调用单元,用于调用动态链接库中的第一函数以创建接口 ; 第二调用单元,用于在创建的所述接口为第一接口时,调用所述第一接口中的第二函 数创建接口; 静音单元,用于在所述第二函数创建的接口为第二接口时,调用所述第二接口中的第 三函数,通过调用的所述第三函数设置静音。
7.如权利要求6所述的装置,其特征在于,所述第一调用单元包括: 创建模块,用于创建第一函数,所述创建的第一函数与所述动态链接库中的第一函数 含有相同的参数; 替换模块,用于将所述动态链接库中的第一函数的指针替换为所创建的第一函数的指 针。
8.如权利要求6所述的装置,其特征在于,所述第二调用单元包括: 创建模块,用于创建第二函数,所述创建的第二函数与所述第一接口中的第二函数含 有相同的参数; 替换模块,用于将所述第一接口中的第二函数的指针替换为所创建的第二函数的指 针。
9.如权利要求6所述的装置,其特征在于,所述静音单元包括: 创建模块,用于创建模块,用于创建第三函数,所述创建的第三函数与所述第二接口中 的第三函数含有相同的参数; 替换模块,用于将所述第二接口中的第三函数的指针替换为所创建的第三函数的指 针; 静音模块,用于在所创建的第三函数内,调用所述第二接口中的第三函数,通过调用的 所述第三函数设置静音。
10.如权利要求6或9所述的方法,其特征在于,所述静音单元具体用于:通过调用所 述第三函数的第一子函数设置静音。
【文档编号】G06F9/48GK104142857SQ201310168181
【公开日】2014年11月12日 申请日期:2013年5月6日 优先权日:2013年5月6日
【发明者】尚子峰, 关亮亮 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1