CN105072461A - 一种数据处理方法和装置 - Google Patents

一种数据处理方法和装置 Download PDF

Info

Publication number
CN105072461A
CN105072461A CN201510388882.8A CN201510388882A CN105072461A CN 105072461 A CN105072461 A CN 105072461A CN 201510388882 A CN201510388882 A CN 201510388882A CN 105072461 A CN105072461 A CN 105072461A
Authority
CN
China
Prior art keywords
data
frame image
client
command content
image data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510388882.8A
Other languages
English (en)
Other versions
CN105072461B (zh
Inventor
葛山
杨涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510388882.8A priority Critical patent/CN105072461B/zh
Publication of CN105072461A publication Critical patent/CN105072461A/zh
Application granted granted Critical
Publication of CN105072461B publication Critical patent/CN105072461B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25875Management of end-user data involving end-user authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4316Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for displaying supplemental content in a region of the screen, e.g. an advertisement in a separate window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4334Recording operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Graphics (AREA)
  • Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例提供了一种数据处理方法和装置,所述的方法包括:在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;对所述指令内容进行存储并反馈。对于客户端中扩展的指令消息对应功能无需升级客户端,操作简单且节省资源,且从内存缓冲区获取的帧图像数据即为显示内容的原始数据,因此能够保证清晰度。

Description

一种数据处理方法和装置
技术领域
本发明涉及计算机技术领域,特别是涉及一种数据处理方法和一种数据处理装置。
背景技术
客户端(Client)是指与服务器相对应,为客户提供本地服务的应用程序。用户在终端本地安装客户端后,可以通过该客户端与对应网络服务器进行交互,为用户提供客户端的相关服务器。例如,通过浏览器客户端可以浏览网页等网络信息,通过播放器客户端可以播放网络的视频数据等信息,通过游戏客户端可以玩网络游戏,通过社交网络客户端可以浏览各用户发布的消息等。
客户端作为用户终端本地的应用程序,用户通常可以在该客户端对应服务器上注册,从而启动客户端时进行登录,使得客户端为登录用户提供个性化的数据等信息。但是,客户端所提供的数据服务往往固化在程序中,因此可扩展性较差,一旦要提供新的服务则必然要升级客户端,操作繁琐且浪费资源。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的客户端的登录方法和相应的客户端的登录装置。
依据本发明的一个方面,提供了一种数据处理方法,包括:在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;对所述指令内容进行存储并反馈。
可选的,所述通过进程注入的方式在所述客户端的渲染接口添加钩子函数,包括:通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;依据所述动态链接库DLL文件为渲染接口添加钩子函数。
可选的,所述指令消息为截屏消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;对所述帧图像数据进行编码生成截屏图像作为指令内容。
可选的,所述指令消息为录制消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
可选的,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对所述帧图像数据进行编码生成截屏图像作为指令内容,包括:将所述帧图像数据添加所述签名数据后进行编码;生成预置格式的截屏图像,将所述截屏图像作为指令内容。
可选的,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
可选的,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:对各帧图像数据进行拼接得到拼接文件;在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
根据本发明的另一个方面,公开了一种数据处理装置,包括:注入模块,用于在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;帧图像获取模块,用于依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;存储并反馈模块,用于对所述指令内容进行存储并反馈。
可选的,所述注入模块,包括:文件添加子模块,用于通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;函数添加子模块,用于依据所述动态链接库DLL文件为渲染接口添加钩子函数。
可选的,所述指令消息为截屏消息,所述帧图像获取模块,包括:数据获取子模块,用于依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;第一编码子模块,用于对所述帧图像数据进行编码生成截屏图像作为指令内容。
可选的,所述指令消息为录制消息,所述帧图像获取模块,包括:数据获取子模块,用于依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;第二编码子模块,用于对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
可选的,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第一编码子模块,用于将所述帧图像数据添加所述签名数据后进行编码;生成预置格式的截屏图像,将所述截屏图像作为指令内容。
可选的,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第二编码子模块,用于在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
可选的,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第二编码子模块,用于对各帧图像数据进行拼接得到拼接文件;在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
在客户端启动时,通过进程注入的方式在所述客户端的内存缓冲区添加钩子函数,从而能够对内容缓冲区进行处理,在接收到指令消息后,调用所述钩子函数从所述内存缓冲区中获取帧图像数据构成指令内容进行存储并反馈,从而对于客户端中扩展的指令消息对应功能无需升级客户端,操作简单且节省资源,且从内存缓冲区获取的帧图像数据即为显示内容的原始数据,因此能够保证清晰度。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明实施例的一种数据处理方法的步骤流程图;
图2示出了根据本发明实施例的一种数据处理方法的优选步骤流程图;
图3示出了根据本发明实施例的另一种数据处理方法的优选步骤流程图;
图4示出了根据本发明实施例的一种数据处理装置的结构框图;
图5示出了根据本发明实施例的另一种数据处理装置的结构框图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
参照图1,示出了根据本发明实施例的一种数据处理方法的步骤流程图,具体可以包括如下步骤:
步骤102,在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数。
为便于用户使用各种类型的客户端且保护用户信息的安全,本实施例中用户在第三方服务器上注册后可以登录并使用客户端,即对于客户端中用户的登录通过第三方的独立进程执行。该独立进程是一个独立于客户端进程之外的第三方进程,通过将信息敏感组件和功能以独立进程的方式封装生成,其中,信息敏感组件包括用户名输入组件、密码输入组件、与云端交互/加密逻辑组件等,对应功能包括获取用户名、密码等登录信息,以及与云端的服务器进行加密交互等。其中,与独立进程交互的服务器即为第三方的服务器,客户端为第三方的用户提供个性化数据服务。
在完成登录进入客户端即客户端启动时,可以通过进程注入的方式在客户端中进行挂钩处理,其中为了能够获取显示内容,可以在客户端的渲染接口添加钩子函数,从而能够依据渲染接口从内存缓冲区获取数据。其中,内存缓冲区存储的是客户端中显示在屏幕上的内容的原始数据,渲染接口从内存缓冲区获取数据渲染后构成显示内容进行显示,例如游戏客户端显示的游戏画面,购物客户端显示的购物页面等。
步骤104,依据接收的指令消息,调用所述钩子函数从所述内存缓冲区中获取帧图像数据构成指令内容。
用户在使用客户端的过程中,若要使用截屏、录制等扩展功能,可以通过快捷键,或者鼠标等外设发出指令消息,通过该指令消息通知客户端进程要执行的操作,从而调用钩子函数从存缓冲区中获取屏幕显示内容对应的帧图像数据,以及该帧图像数据构成指令内容,指令消息不同所构成的指令内容也不同。
步骤106,对所述指令内容进行存储并反馈。
可以将指令内容存储到设置好的内存位置上,然后反馈用户,例如通知该指令消息对应操作执行完毕,或者告知用户指令内容的存储位置,或者将指令内容发送给用户指定的位置等。
综上所述,在客户端启动时,通过进程注入的方式在所述客户端的内存缓冲区添加钩子函数,从而能够对内容缓冲区进行处理,在接收到指令消息后,调用所述钩子函数从所述内存缓冲区中获取帧图像数据构成指令内容进行存储并反馈,从而对于客户端中扩展的指令消息对应功能无需升级客户端,操作简单且节省资源,且从内存缓冲区获取的帧图像数据即为显示内容的原始数据,因此能够保证清晰度。
实施例二
在上述实施例的基础上,本实施例详细论述上述通过独立进程执行的数据处理的方法。
参照图2,示出了根据本发明实施例的一种数据处理方法的优选步骤流程图,具体可以包括如下步骤:
步骤202,在客户端启动时,通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端。
步骤204,依据所述动态链接库DLL文件为渲染接口添加钩子函数。
其中通过第三方独立进程登录时会调用所述独立登录进程对应登录窗口,将所述窗口显示在所述当前客户端的显示窗口之上,包括依据所述当前客户端的进程填写的导出函数,调用所述独立登录进程对应登录窗口。将所述登录窗口作为所述当前客户端的显示窗口的子窗口,将子窗口显示在所述当前客户端的显示窗口之上。本实施例中,通过第三方独立模块调用上述封装生成的独立登录进程,第三方独立模块的一种呈现形式以动态链接库(DynamicLinkLibrary,DLL)为载体。客户端调用DLL,DLL提供简单的导出函数给客户端填写简单的句柄,显示区域,结果回调函数等信息,如导出函数为:
UserLogon(HWNDhParentWnd,RECTrcClien,LPLoginResultCallBacklpLoginCallBack)
DLL接口自动与独立登录进程通信交互,包括启动第三方的独立登录进程,以及控制进程中登录窗口的显示,以达到当前客户端的进程调用独立登录进程中窗口显示的目的。DLL基于当前客户端的进程填写的导出函数调用所述独立登录进程对应的登录组件包括用户名输入组件、密码输入组件,从而生成相应的登录窗口,并确定登录窗口的显示区域,将当前客户端的显示窗口作为父窗口,该登录窗口作为所述当前客户端的显示窗口的子窗口,将子窗口显示在父窗口之上。
在登录完成后,为了用户更加便捷的使用客户端,将客户端的扩展功能注入到客户端内部,从而在执行客户端的扩展功能时无需退出客户端。
因此会通过进程注入的方式将具有交互操作功能的动态链接库(DynamicLinkLibrary,DLL)文件添加到所述客户端,该DLL文件是第三方的DLL文件,即利用钩子函数在客户端的进程注入方法,然后以DLL为上述交互操作的功能的载体,将DLL文件添加到客户端中,从而在客户端需要执行上述功能时调用DLL文件执行对应的功能操作。
添加完第三方的DLL文件后,会查找客户端进程执行过程所需的其他DLL文件,例如渲染接口相关的DLL文件通过挂钩处理挂在钩子函数,从而在调用该其他DLL文件时,钩子函数会先拦截调用消息,然后依据需求确定对该DLL文件对应内容的处理操作。
以游戏客户端为例,在添加完第三方的DLL文件后,直接查找游戏客户端进程的d3d9.dll,并将其画面渲染相关的渲染接口进行挂钩处理,即添加钩子函数从而拦截该渲染接口的数据,例如对IDirect3DDevice9::Present接口进行挂钩处理。
其中,d3d9.dll是DirectX9的动态链接库,用于支持Windows多媒体和游戏。IDirect3DDevice9::Present接口可以.交换后台缓存和前台缓存,并提交到渲染管道,将后台缓存内容渲染出来。
步骤206,接收指令消息。
步骤208,依据所述指令消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取的帧图像数据。
步骤210,对所述帧图像数据进行编码生成指令内容。
步骤212,对所述指令内容进行存储并反馈。
用户在使用客户端的过程中,可以通过快捷键触发将指令消息发送给客户端进程,此时进程调用该DLL文件对指令消息进行处理,该DLL文件依据该指令消息调用挂载在渲染接口的钩子函数,在渲染接口执行渲染前拦截其从内存缓冲区中获取的帧图像数据,将帧图像数据进行缓存后发送给接口进行渲染等操作以使客户端继续显示画面。
而对于缓存的帧图像数据按照相应的指令消息所需操作进行编码,生成相应的指令内容,例如截屏,又如录制显示画面等。
本发明一个可选实施例中,还可以预置签名数据,该签名数据包括加密的签名信息,即是一段加密后的描述信息,用于对指令内容如截屏、录制数据等进行标识,如标识制作人,或者版权所有人等。从而在获取到帧图像数据后,在对帧图像数据进行编码的过程中为帧图像数据添加签名数据,得到具有签名数据的指令内容。
上述实施例论述依据指令消息对内存缓冲区的帧图像数据进行处理得到指令内容的步骤,下面结合截图、录制等操作指令论述数据处理过程。
参照图3,示出了根据本发明实施例的另一种数据处理方法的优选步骤流程图,具体可以包括如下步骤:
步骤302,在客户端启动时,通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端。
步骤304,依据所述动态链接库DLL文件为渲染接口添加钩子函数。
步骤306,接收指令消息并对指令消息进行检测。
若指令消息为截屏消息,执行步骤308,若指令消息为录制消息,执行步骤314。
步骤308,依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据。
步骤310,获取预置的签名数据。
步骤312,将所述帧图像数据添加所述签名数据后进行编码,生成预置格式的截屏图像,将所述截屏图像作为指令内容。
针对截屏消息,可以调用挂载在渲染接口的钩子函数,在渲染接口执行渲染前拦截其从内存缓冲区中获取当前的帧图像数据,将当前帧图像数据进行缓存后,将当前帧图像数据进行缓存后发送给接口进行渲染等操作。
获取缓存的帧图像数据以及预置的签名数据,按照帧图像数据的图像格式添加签名数据,然后对添加签名的帧图像数据进行编码,生成预置格式的截屏图像,将所述截屏图像作为指令内容。
步骤314,依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据。
步骤316,获取预置的签名数据。
步骤318,对各帧图像数据进行拼接并添加签名数据,得到添加签名数据的拼接文件,对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
针对录制消息,可以调用挂载在渲染接口的钩子函数,在渲染接口执行渲染前拦截其从内存缓冲区中获取各个帧图像数据,其中所获取的帧图像数据的数量尤其指定的录制时间决定,即依据录制时间确定起始帧和结束帧,从起始帧开始获取帧图像数据,到结束帧时停止帧图像数据的获取,在该过程中对获取的各帧图像数据进行缓存后,将各帧图像数据进行缓存后发送给接口进行渲染等操作。
按照顺序获取各个帧图像数据以及签名数据,然后对各帧图像数据进行拼接并添加签名数据,通过拼接可以将帧图像数据组装成视频文件,即得到添加签名数据的拼接文件。然后按照预置的编码方式例如H.264等对所述添加签名数据的拼接文件进行编码,通过编码可以压缩数据量得到相应的录制视频数据,将所述录制视频数据构成指令内容。
其中,签名数据通过是在编码前进行添加的,因此可以在拼接过程中添加签名数据,也可以在拼接完成后添加签名数据,可以依据实际需求设定,本实施例对此不作限定。
在拼接过程中添加签名数据,即在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件。在按照顺序对各帧图像数据进行拼接时,依据视频文件的标准格式加上附加的签名字段即在签名字段中记录签名数据,得到添加签名数据的拼接文件。
在拼接完成后添加签名数据,即在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件。按照顺序对各帧图像数据进行拼接后组装成相应的视频文件,在该视频文件的末端添加签名字段记录签名数据,得到添加签名数据的拼接文件。而后进行编码等生成所需格式的录制视频数据构成指令内容。
步骤320,对所述指令内容进行存储并反馈。
通过在渲染接口挂载钩子函数,在渲染前从内存缓冲区获取帧图像数据,即可以获取客户端画面显示的原始数据,即与客户端显示的数据保持一致,从而防止出现失真等问题。
在游戏客户端中截取游戏画面或者录制游戏过程,从而在游戏过程中,通过快捷键就可以将当前的游戏的操作画面保存为通用的图片文件格式,或者所需的视频画面。
上述实施例详细描述了针对客户端的数据处理方法,以游戏客户端为例,游戏客户端的厂商通过专注于游戏本身的研发,而不会把扩展功能,即游戏辅助相关的产品做为核心的产品。本实施例为用户提供更好的扩展功能体验。
在登录游戏成功游戏启动之后,可以利用windows钩子函数,通过进程注入等方法,以dll为载体在游戏进程内部完成对游戏的辅助功能,使得游戏用户在执行游戏的过程中完成各种操作等辅助功能,而在无需游戏界面与外界之间来回切换,操作简单,提高用户体验。
对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
实施例三
在上述实施例的基础上,本实施例还提供了一种数据处理装置。
参照图4,示出了根据本发明实施例的一种数据处理装置的结构框图,具体可以包括如下模块:
注入模块402,用于在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数。
帧图像获取模块404,用于依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容。
存储并反馈模块406,用于对所述指令内容进行存储并反馈。
综上所述,在客户端启动时,通过进程注入的方式在所述客户端的内存缓冲区添加钩子函数,从而能够对内容缓冲区进行处理,在接收到指令消息后,调用所述钩子函数从所述内存缓冲区中获取帧图像数据构成指令内容进行存储并反馈,从而对于客户端中扩展的指令消息对应功能无需升级客户端,操作简单且节省资源,且从内存缓冲区获取的帧图像数据即为显示内容的原始数据,因此能够保证清晰度。
参照图5,示出了根据本发明实施例的另一种数据处理装置的结构框图,具体可以包括如下模块:
注入模块502,用于在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数。
帧图像获取模块504,用于依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容。
存储并反馈模块506,用于对所述指令内容进行存储并反馈。
所述注入模块502,包括:文件添加子模块50202,用于通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;函数添加子模块50204,用于依据所述动态链接库DLL文件为渲染接口添加钩子函数。
本发明一个可选实施例中,所述指令消息为截屏消息,所述帧图像获取模块504,包括:数据获取子模块50402,用于依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;第一编码子模块50404,用于对所述帧图像数据进行编码生成截屏图像作为指令内容。
本发明另一个可选实施例中,所述指令消息为录制消息,所述帧图像获取模504块,包括:数据获取子模块50402,用于依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;第二编码子模块50406,用于对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
所述帧图像获取模块504,还包括:签名获取子模块50408,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第一编码子模块50404,用于将所述帧图像数据添加所述签名数据后进行编码;生成预置格式的截屏图像,将所述截屏图像作为指令内容。
所述第二编码子模块50406,用于在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
所述第二编码子模块50406,用于对各帧图像数据进行拼接得到拼接文件;在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
通过在渲染接口挂载钩子函数,在渲染前从内存缓冲区获取帧图像数据,即可以获取客户端画面显示的原始数据,即与客户端显示的数据保持一致,从而防止出现失真等问题。
在游戏客户端中截取游戏画面或者录制游戏过程,从而在游戏过程中,通过快捷键就可以将当前的游戏的操作画面保存为通用的图片文件格式,或者所需的视频画面。
上述实施例详细描述了针对客户端的数据处理方法,以游戏客户端为例,游戏客户端的厂商通过专注于游戏本身的研发,而不会把扩展功能,即游戏辅助相关的产品做为核心的产品。本实施例为用户提供更好的扩展功能体验。
在登录游戏成功游戏启动之后,可以利用windows钩子函数,通过进程注入等方法,以dll为载体在游戏进程内部完成对游戏的辅助功能,使得游戏用户在执行游戏的过程中完成各种操作等辅助功能,而在无需游戏界面与外界之间来回切换,操作简单,提高用户体验。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的数据处理方法和装置设备中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了A1、一种数据处理方法,包括:在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;对所述指令内容进行存储并反馈。
A2、如A1所述的方法,所述通过进程注入的方式在所述客户端的渲染接口添加钩子函数,包括:通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;依据所述动态链接库DLL文件为渲染接口添加钩子函数。
A3、如A1或A2所述的方法,所述指令消息为截屏消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;对所述帧图像数据进行编码生成截屏图像作为指令内容。
A4、如A1或A2所述的方法,所述指令消息为录制消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
A5、如A3所述的方法,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对所述帧图像数据进行编码生成截屏图像作为指令内容,包括:将所述帧图像数据添加所述签名数据后进行编码;生成预置格式的截屏图像,将所述截屏图像作为指令内容。
A6、如A4所述的方法,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
A7、如A4所述的方法,还包括:获取预置的签名数据,所述签名数据包括加密的签名信息;对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:对各帧图像数据进行拼接得到拼接文件;在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
本发明还公开了B8、一种数据处理装置,包括:注入模块,用于在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;帧图像获取模块,用于依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;存储并反馈模块,用于对所述指令内容进行存储并反馈。
B9、如B8所述的装置,所述注入模块,包括:文件添加子模块,用于通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;函数添加子模块,用于依据所述动态链接库DLL文件为渲染接口添加钩子函数。
B10、如B8或B9所述的装置,所述指令消息为截屏消息,所述帧图像获取模块,包括:数据获取子模块,用于依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;第一编码子模块,用于对所述帧图像数据进行编码生成截屏图像作为指令内容。
B11、如B8或B9所述的装置,所述指令消息为录制消息,所述帧图像获取模块,包括:数据获取子模块,用于依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;第二编码子模块,用于对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
B12、如B10所述的装置,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第一编码子模块,用于将所述帧图像数据添加所述签名数据后进行编码;生成预置格式的截屏图像,将所述截屏图像作为指令内容。
B13、如B11所述的装置,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第二编码子模块,用于在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
B14、如B11所述的装置,所述帧图像获取模块,还包括:签名获取子模块,用于获取预置的签名数据,所述签名数据包括加密的签名信息;所述第二编码子模块,用于对各帧图像数据进行拼接得到拼接文件;在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。

Claims (10)

1.一种数据处理方法,包括:
在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;
依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;
对所述指令内容进行存储并反馈。
2.如权利要求1所述的方法,其特征在于,所述通过进程注入的方式在所述客户端的渲染接口添加钩子函数,包括:
通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;
依据所述动态链接库DLL文件为渲染接口添加钩子函数。
3.如权利要求1或2所述的方法,其特征在于,所述指令消息为截屏消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:
依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;
对所述帧图像数据进行编码生成截屏图像作为指令内容。
4.如权利要求1或2所述的方法,其特征在于,所述指令消息为录制消息,则所述依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容,包括:
依据所述录制消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中依次获取各帧图像数据;
对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容。
5.如权利要求3所述的方法,其特征在于,还包括:
获取预置的签名数据,所述签名数据包括加密的签名信息;
对所述帧图像数据进行编码生成截屏图像作为指令内容,包括:将所述帧图像数据添加所述签名数据后进行编码;
生成预置格式的截屏图像,将所述截屏图像作为指令内容。
6.如权利要求4所述的方法,其特征在于,还包括:
获取预置的签名数据,所述签名数据包括加密的签名信息;
对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:
在各帧图像数据进行拼接时添加所述签名数据,得到添加签名数据的拼接文件;
对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
7.如权利要求4所述的方法,其特征在于,还包括:
获取预置的签名数据,所述签名数据包括加密的签名信息;
对各帧图像数据进行拼接,编码生成录制视频数据构成指令内容,包括:
对各帧图像数据进行拼接得到拼接文件;
在所述拼接文件的末端添加所述签名数据,得到添加签名数据的拼接文件;
对所述添加签名数据的拼接文件进行编码生成录制视频数据,将所述录制视频数据构成指令内容。
8.一种数据处理装置,包括:
注入模块,用于在客户端启动时,通过进程注入的方式在所述客户端的渲染接口添加钩子函数;
帧图像获取模块,用于依据接收的指令消息,调用所述钩子函数从所述渲染接口对应内存缓冲区中获取帧图像数据构成指令内容;
存储并反馈模块,用于对所述指令内容进行存储并反馈。
9.如权利要求8所述的装置,其特征在于,所述注入模块,包括:
文件添加子模块,用于通过进程注入的方式,将具有交互操作功能的动态链接库DLL文件添加到所述客户端;
函数添加子模块,用于依据所述动态链接库DLL文件为渲染接口添加钩子函数。
10.如权利要求8或9所述的装置,其特征在于,所述指令消息为截屏消息,所述帧图像获取模块,包括:
数据获取子模块,用于依据所述截屏消息,调用所述钩子函数在所述渲染接口执行渲染前从内存缓冲区中获取当前的帧图像数据;
第一编码子模块,用于对所述帧图像数据进行编码生成截屏图像作为指令内容。
CN201510388882.8A 2015-07-03 2015-07-03 一种数据处理方法和装置 Active CN105072461B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510388882.8A CN105072461B (zh) 2015-07-03 2015-07-03 一种数据处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510388882.8A CN105072461B (zh) 2015-07-03 2015-07-03 一种数据处理方法和装置

Publications (2)

Publication Number Publication Date
CN105072461A true CN105072461A (zh) 2015-11-18
CN105072461B CN105072461B (zh) 2019-03-08

Family

ID=54501721

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510388882.8A Active CN105072461B (zh) 2015-07-03 2015-07-03 一种数据处理方法和装置

Country Status (1)

Country Link
CN (1) CN105072461B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631307A (zh) * 2015-12-24 2016-06-01 北京奇虎科技有限公司 截屏方法、装置及系统
CN105681841A (zh) * 2015-12-30 2016-06-15 广东欧珀移动通信有限公司 一种基于浏览器的视频播放控制方法及系统
CN105749550A (zh) * 2016-02-24 2016-07-13 戴佳佳 iOS系统手机游戏录像方法
CN106127676A (zh) * 2016-06-17 2016-11-16 许之敏 一种快速截取及合成多屏幕长截图的方法
CN106776022A (zh) * 2016-12-09 2017-05-31 武汉斗鱼网络科技有限公司 一种优化游戏进程cpu使用率的系统及方法
CN109821236A (zh) * 2019-01-18 2019-05-31 恒信东方文化股份有限公司 一种实时图像的提取方法
CN113010181A (zh) * 2021-03-24 2021-06-22 北京百度网讯科技有限公司 一种深度学习框架之中算子的部署方法、装置及电子设备
CN114089896A (zh) * 2022-01-13 2022-02-25 北京蔚领时代科技有限公司 一种渲染图像截取方法及装置
CN114100130A (zh) * 2022-01-20 2022-03-01 北京蔚领时代科技有限公司 一种游戏画面截取方法、装置、设备及云服务器

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991749A (zh) * 2005-12-31 2007-07-04 腾讯科技(深圳)有限公司 一种基于个人信息管理软件的个人信息管理方法
CN102546797A (zh) * 2011-12-31 2012-07-04 互动在线(北京)科技有限公司 一种基于浏览器端/服务器端结构的移动设备截屏方法
CN103593254A (zh) * 2012-08-13 2014-02-19 三亚中兴软件有限责任公司 应用快照服务系统及其应用快照的生成方法
WO2014086225A1 (en) * 2012-12-06 2014-06-12 Tencent Technology (Shenzhen) Company Limited Screenshot method and device
CN104753928A (zh) * 2015-03-16 2015-07-01 苏州科达科技股份有限公司 一种码流转发方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1991749A (zh) * 2005-12-31 2007-07-04 腾讯科技(深圳)有限公司 一种基于个人信息管理软件的个人信息管理方法
CN102546797A (zh) * 2011-12-31 2012-07-04 互动在线(北京)科技有限公司 一种基于浏览器端/服务器端结构的移动设备截屏方法
CN103593254A (zh) * 2012-08-13 2014-02-19 三亚中兴软件有限责任公司 应用快照服务系统及其应用快照的生成方法
WO2014086225A1 (en) * 2012-12-06 2014-06-12 Tencent Technology (Shenzhen) Company Limited Screenshot method and device
CN104753928A (zh) * 2015-03-16 2015-07-01 苏州科达科技股份有限公司 一种码流转发方法及系统

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105631307B (zh) * 2015-12-24 2019-05-17 北京奇虎科技有限公司 截屏方法、装置及系统
CN105631307A (zh) * 2015-12-24 2016-06-01 北京奇虎科技有限公司 截屏方法、装置及系统
CN105681841A (zh) * 2015-12-30 2016-06-15 广东欧珀移动通信有限公司 一种基于浏览器的视频播放控制方法及系统
CN105749550A (zh) * 2016-02-24 2016-07-13 戴佳佳 iOS系统手机游戏录像方法
CN106127676A (zh) * 2016-06-17 2016-11-16 许之敏 一种快速截取及合成多屏幕长截图的方法
CN106127676B (zh) * 2016-06-17 2019-01-25 许之敏 一种快速截取及合成多屏幕长截图的方法
CN106776022A (zh) * 2016-12-09 2017-05-31 武汉斗鱼网络科技有限公司 一种优化游戏进程cpu使用率的系统及方法
CN109821236A (zh) * 2019-01-18 2019-05-31 恒信东方文化股份有限公司 一种实时图像的提取方法
CN109821236B (zh) * 2019-01-18 2022-02-22 恒信东方文化股份有限公司 一种实时图像的提取方法
CN113010181A (zh) * 2021-03-24 2021-06-22 北京百度网讯科技有限公司 一种深度学习框架之中算子的部署方法、装置及电子设备
CN113010181B (zh) * 2021-03-24 2022-05-27 北京百度网讯科技有限公司 一种深度学习框架之中算子的部署方法、装置及电子设备
US11531529B2 (en) 2021-03-24 2022-12-20 Beijing Baidu Netcom Science Technology Co., Ltd. Method and electronic device for deploying operator in deep learning framework
CN114089896A (zh) * 2022-01-13 2022-02-25 北京蔚领时代科技有限公司 一种渲染图像截取方法及装置
CN114100130A (zh) * 2022-01-20 2022-03-01 北京蔚领时代科技有限公司 一种游戏画面截取方法、装置、设备及云服务器

Also Published As

Publication number Publication date
CN105072461B (zh) 2019-03-08

Similar Documents

Publication Publication Date Title
CN105072461A (zh) 一种数据处理方法和装置
CN103425491B (zh) 一种游戏引擎
US10289659B2 (en) Delivery and display of page previews using shadow DOM
CN110599396B (zh) 信息处理方法及装置
JP5850833B2 (ja) 通信システムにおけるユーザインターフェースを送受信する装置及び方法
CN112331235B (zh) 多媒体内容的编辑控制方法、装置、电子设备和存储介质
CN114329298B (zh) 一种页面呈现方法、装置、电子设备及存储介质
CN110166810A (zh) 视频渲染引擎切换方法、装置、设备及可读存储介质
CN110070593B (zh) 图片预览信息的显示方法、装置、设备及介质
CN104778075A (zh) Android系统中native层调用Java层API的方法和装置
EP4080507A1 (en) Method and apparatus for editing object, electronic device and storage medium
CN104378393A (zh) 一种资源分享方法和相应的装置
CN111324347A (zh) 组件构造方法、装置、系统、页面生成方法、设备及介质
CN114866801B (zh) 视频数据的处理方法、装置、设备及计算机可读存储介质
CN112764746A (zh) 数据处理方法、装置、电子设备及存储介质
CN103200266B (zh) 对网络应用进行管理的方法、网络应用管理器及系统
CN103116632B (zh) 一种主题包的生成方法、装置和设备
CN105096989A (zh) 一种背景音乐的处理方法和装置
CN110673827A (zh) 基于安卓系统的资源调用方法及装置、电子设备
CN113282268B (zh) 音效配置方法和装置、存储介质及电子设备
CN105069328A (zh) 一种数据处理方法和装置
CN105095398A (zh) 一种信息提供方法和装置
CN112367295B (zh) 插件展示方法及装置、存储介质及电子设备
CN110704157B (zh) 一种应用启动方法、相关装置及介质
CN116261003A (zh) 一种显示设备及基于浏览器的流媒体播放控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20220808

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.

TR01 Transfer of patent right