[發明專利]一種動態庫的代理方法及設備有效
| 申請號: | 201610721505.6 | 申請日: | 2016-08-24 |
| 公開(公告)號: | CN108304158B | 公開(公告)日: | 2021-12-10 |
| 發明(設計)人: | 邱寅峰 | 申請(專利權)人: | 北京頂象技術有限公司 |
| 主分類號: | G06F8/20 | 分類號: | G06F8/20;G06F8/30;G06F21/52 |
| 代理公司: | 北京超凡宏宇專利代理事務所(特殊普通合伙) 11463 | 代理人: | 程曉 |
| 地址: | 100000 北京市海淀區*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 動態 代理 方法 設備 | ||
1.一種動態庫的代理方法,其特征在于,所述動態庫中包含與第一函數關聯的第二函數,所述方法包括:
在所述第一函數的接口被修改的情況下,獲取被修改的第一函數的修改信息,所述修改信息至少包含所述第一函數的被修改前的接口信息和被修改后的接口信息;
根據所述第一函數的修改信息以及所述第二函數的函數信息,生成用于代理所述第二函數與所述第一函數關聯的代理函數;
所述根據所述第一函數的修改信息以及所述第二函數的函數信息,生成用于代理所述第二函數與所述第一函數關聯的代理函數的步驟,包括:
根據所述第一函數的修改信息,生成第一函數的修改映射表,所述修改映射表用于描述修改前的第一函數與修改后的第一函數的映射關系;
根據所述修改映射表以及第二函數的函數信息,生成用于代理所述第二函數被所述第一函數調用的代理函數;
所述動態庫中包含將被修改前的所述第一函數與所述第二函數關聯的關聯函數,所述根據所述第一函數的修改信息以及所述第二函數的函數信息,生成用于代理所述第二函數與所述第一函數關聯的代理函數的步驟,包括:
根據所述第一函數的修改信息以及所述關聯函數中用于關聯所述第一函數與所述第二函數的關聯對象,生成新的關聯對象;
根據所述第二函數的信息以及所述新的關聯對象,生成用于根據新的關聯對象代理所述第二函數與所述第一函數關聯的代理函數。
2.根據權利要求1所述的方法,其特征在于:
所述代理函數,還用于在所述第一函數屬于非法函數時,代理所述第二函數取消與所述第一函數的關聯。
3.根據權利要求1所述的方法,其特征在于,
所述第一函數由Java語言開發且所述第二函數由C/C++語言開發。
4.根據權利要求1所述的方法,其特征在于,
所述接口信息至少包括對應函數的類名和函數名。
5.一種動態庫代理設備,其特征在于,所述動態庫中包含與第一函數關聯的第二函數,所述代理設備包括:
信息獲取單元,用于在所述第一函數的接口被修改的情況下,獲取被修改的第一函數的修改信息,所述修改信息至少包含所述第一函數的被修改前的接口信息和被修改后的接口信息;
函數生成單元,用于根據所述第一函數的修改信息以及所述第二函數的函數信息,生成用于代理所述第二函數與所述第一函數關聯的代理函數;
所述函數生成單元包括:
用于根據所述第一函數的修改信息生成第一函數的修改映射表的裝置,所述修改映射表用于描述修改前的第一函數與修改后的第一函數的映射關系;
用于根據所述修改映射表以及第二函數的函數信息,生成用于代理所述第二函數被所述第一函數調用的代理函數的裝置;
所述動態庫中包含將所述第一函數與所述第二函數關聯的關聯函數,所述函數生成單元包括:
用于根據所述第一函數的修改信息以及所述關聯函數中用于關聯所述第一函數與所述第二函數的關聯對象生成新的關聯對象的裝置;
用于根據所述第二函數的信息以及所述新的關聯對象生成用于根據新的關聯對象代理所述第二函數與所述第一函數關聯的代理函數的裝置。
6.根據權利要求5所述的代理設備,其特征在于,
所述代理函數,還用于在所述第一函數非法時代理所述第二函數取消與所述第一函數的關聯。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京頂象技術有限公司,未經北京頂象技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610721505.6/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:基于憶阻器的積分器運算電路
- 下一篇:基于移動IOS的漫畫APP軟件系統





