两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

基于.Net卡查找類和函數(shù)的方法和.Net卡的制作方法

文檔序號:6463532閱讀:190來源:國知局
專利名稱:基于.Net卡查找類和函數(shù)的方法和.Net卡的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及信息安全領(lǐng)域,特別涉及一種基于.Net卡査找類和函數(shù)的方法和.Net卡。
背景技術(shù)
.Net是微軟的新一代技術(shù)平臺,是全新的基于互聯(lián)網(wǎng)的跨語言軟件開發(fā)平臺,順應(yīng)了當(dāng) 今軟件工業(yè)分布式計算、面向組件、企業(yè)級應(yīng)用、軟件服務(wù)化和以Web為中心等大趨勢。.Net 并非開發(fā)語言,但是在.Net開發(fā)平臺上可以支持多門開發(fā)語言,如C弁語言、C++、VisualBasic、 Jscript等o
智能卡是一種大小和普通名片相仿的塑料卡片,內(nèi)含一塊直徑lcm左右的硅芯片,具有 存儲信息和進行復(fù)雜運算的功能。它被廣泛地應(yīng)用于電話卡、金融卡、身份識別卡以及移動 電話、付費電視等領(lǐng)域。其中,智能卡的芯片上,集成了微處理器、存儲器以及輸入/輸出單 元等,使得智能卡被認為是世界上最小的電子計算機。并且在智能卡上,擁有一整套性能極 強的安全保密控制機制,安全控制程序被固化在只讀存儲器之中,因而具有無法復(fù)制和密碼 讀寫等可靠的安全保證。它較之普通磁卡,還具有信息存儲容量大,可利用微處理來增加卡 片功能等優(yōu)點。
.Net卡是一種含有可以運行.Net程序的.Net卡虛擬機的微處理器智能卡。所謂虛擬機, 可以把它想象成一臺用軟件來模擬的機器,在這臺機器里有處理器、內(nèi)存、寄存器等各種硬 件,模擬運行各種指令,在這臺機器上運行^軟件對運行環(huán)境沒有特殊要求,所以虛擬機對 在它上運行的程序是透明的。例如,x86虛擬機模擬的是x86指令程序的運行環(huán)境,c51虛擬 機模擬的是c51指令程序的運行環(huán)境。當(dāng)在.Net卡中運行服務(wù)程序時,通常會調(diào)用標(biāo)準(zhǔn)類庫 中的類和函數(shù)。
傳統(tǒng)的查找類的方法, 一般是先獲取待査找的類的類名和命名空間,然后在標(biāo)準(zhǔn)類庫中 逐一査找,直到定位出符合該類名和命名空間的類。査找函數(shù)的方法是先找到該函數(shù)所屬的 類,然后獲取該函數(shù)的函數(shù)名、返回值和參數(shù)類型。在標(biāo)準(zhǔn)類庫中逐一查找函數(shù)名相同,參 數(shù)個數(shù)和參數(shù)類型都一致的函數(shù)。
但是由于.NET卡內(nèi)存有限,運行速度也不快,傳統(tǒng)的査找函數(shù)的方法不可能滿足.Net卡的需要。

發(fā)明內(nèi)容
為了提高在.Net卡中運行程序時査找類fe函數(shù)的速度,本發(fā)明提供了一種基于.Net卡査 找類和函數(shù)的方法和.Net卡。所述技術(shù)方案如下
一種基于.Net卡査找類和函數(shù)的方法,應(yīng)用于.Net卡內(nèi)部的程序集的運行過程中,所述 方法包括
根據(jù)所述.Net卡當(dāng)前運行的類的信息,或者根據(jù)所述.Net卡當(dāng)前運行的函數(shù)所屬類的信 息和所述函數(shù)的信息,構(gòu)建第一字符串; 運算所述第一字符串得到第一索引值;
在所述.Net卡內(nèi)預(yù)先存儲的索引表中,根據(jù)所述第一索引值查找對應(yīng)的第一定位值,所 述索引表中的索引值按照與生成所述第一索引值相同的方法生成;
根據(jù)所述第一定位值,在所述.Net卡的運行類庫中,找到所述類或函數(shù)。 所述根據(jù)所述.Net卡當(dāng)前運行的類的信息,構(gòu)建第一字符串,具體為 用所述.Net卡當(dāng)前運行的類的類名和命名空間組成第一字符串。
所述根據(jù)所述.Net卡當(dāng)前運行的函數(shù)所屬類的信息和所述函數(shù)的信息,構(gòu)建第一字符串, 具體為
用所述.Net卡當(dāng)前運行的函數(shù)的所屬類的類名和命名空間、所述函數(shù)的函數(shù)名與所述函 數(shù)的每個參數(shù)的類名和命名空間組成第一字符串。 所述方法還包括
當(dāng)所述索引表中未包含所述第一索引值時,將所述.Net卡當(dāng)前運行的函數(shù)所屬的類作為
當(dāng)前類,根據(jù)所述當(dāng)前類的父類的信息與所述函數(shù)的信息,構(gòu)建第二字符串,運算所述第二 字符串得到第二索引值; '
判斷所述索引表中是否包含所述第二索引值;
如果是,則在所述索引表中,根據(jù)所述第二索引值查找對應(yīng)的第二定位值,根據(jù)所述第 二定位值,在所述.Net卡的運行類庫中,找到所述.Net卡當(dāng)前運行的類;
否則,將所述父類作為當(dāng)前類,按照與得到所述第二索引值相同的方法進行處理,直到 得到包含在所述索引表中的第三索引值,在所述索引表中,根據(jù)所述第三索引值査找對應(yīng)的 第三定位值,根據(jù)所述第三定位值,在所述.Net卡的運行類庫中,找到所述.Net卡當(dāng)前運行 的類。所述索弓I表存儲于所述.Net卡內(nèi)部的所述程序集中。 一種.Net卡,所述.Net卡包括 存儲模塊,用于存儲程序集和索引表;
構(gòu)建模塊,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,根據(jù)當(dāng)前運行的類的 信息,或者根據(jù)當(dāng)前運行的函數(shù)所屬類的信k和所述函數(shù)的信息,構(gòu)建第一字符串; 運算模塊,用于運算所述構(gòu)建模塊生成的第一字符串得到第一索引值;
査找模塊,用于在所述存儲模塊存儲的索引表中,根據(jù)所述運算模塊得到的第一索引值 査找對應(yīng)的第一定位值,所述索引表中的索引值按照與生成所述第一索引值相同的方法生成; 還用于根據(jù)所述第一定位值,在所述.Net卡的運行類庫中,找到所述類或函數(shù)。
所述構(gòu)建模塊具體包括
第一構(gòu)建單元,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,用所述.Net卡當(dāng) 前運行的類的類名和命名空間組成第一字符串。 所述構(gòu)建模塊具體包括
第二構(gòu)建單元,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,用所述.Net卡當(dāng) 前運行的函數(shù)的所屬類的類名和命名空間、所述函數(shù)的函數(shù)名與所述函數(shù)的每個參數(shù)的類名 和命名空間組成第一字符串。
所述構(gòu)建模塊還用于當(dāng)所述索引表中未包含所述運算模塊得到的第一索引值時,將所 述.Net卡當(dāng)前運行的函數(shù)所屬的類作為當(dāng)前類,根據(jù)所述當(dāng)前類的父類的信息與所述函數(shù)的 信息,構(gòu)建第二字符串;
所述運算模塊還用于運算所述構(gòu)建模塊生成的第二字符串得到第二索引值;
相應(yīng)地,所述.Net卡還包括
判斷模塊,用于判斷所述索引表中是否包含所述運算模塊得到的第二索引值; 而且,所述查找模塊還用于當(dāng)所述判斷模塊判斷的結(jié)果為是時,在所述索引表中,根據(jù) 所述第二索引值查找對應(yīng)的第二定位值,根據(jù)所述第二定位值,在所述.Net卡的運行類庫中, 找到所述.Net卡當(dāng)前運行的類;當(dāng)所述判斷模塊判斷的結(jié)果為否時,將所述父類作為當(dāng)前類, 按照與得至l」所述第二索引值相同的方法進行處理,直到得到包含在所述索引表中的第三索引 值,在所述索引表中,根據(jù)所述第三索引值査找對應(yīng)的第三定位值,根據(jù)所述第三定位值, 在所述.Net卡的運行類庫中,找到所述.Net卡當(dāng)前運行的類。 所述索弓I表存儲于所述.Net卡內(nèi)部的所述程序集中。
本發(fā)明通過構(gòu)建字符串并根據(jù)預(yù)存的索引表定位待查找的類或函數(shù),提高了程序在.Net卡中運行時,査找待調(diào)用的類或函數(shù)的速度,而且索引表占用的.Net卡內(nèi)存少,簡單方便, 容易實現(xiàn)。另外,對于繼承函數(shù)和重寫函數(shù),通過根據(jù)父類信息進行查找,可以實現(xiàn)在索引 表中找到索引值,從而實現(xiàn)成功定位。


圖1是本發(fā)明實施例1提供的基于.Net、查找類和函數(shù)的方法流程圖; 圖2是本發(fā)明實施例2提供的基于.Net卡査找類和函數(shù)的方法流程圖; 圖3是本發(fā)明實施例3提供的.Net卡結(jié)構(gòu)圖。
具體實施例方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進 一步地詳細描述。 實施例1
參見圖1,本發(fā)明實施例提供了一種基于.Net卡査找類和函數(shù)的方法,應(yīng)用于.Net卡內(nèi)部 的程序集的運行過程中,本實施例以査找類為例進行說明,該方法具體包括
步驟101:將.Net卡通過讀卡器或者遠稃訪問的方式連接于主機,.Net卡運行其內(nèi)部存儲 區(qū)中存儲的程序集,該.Net卡中還預(yù)存有索引表,索引表中包括索引值和對應(yīng)的用于在類庫 中查找類或函數(shù)的定位值。例如,索引表中有類Classl的索引值l,該索引值對應(yīng)的定位值 為Tokenl=0xll,在.Net卡的類庫中定位值0x11對應(yīng)類Classl的實體內(nèi)容。
步驟102:根據(jù).Net卡當(dāng)前運行的類的信息,構(gòu)建第一字符串。
具體地,可以用.Net卡當(dāng)前運行的類的類名和命名空間組成第一字符串。例如,當(dāng)前運 行的類為Class 1 ,其命名空間為NameSpacel ,則構(gòu)建的第一字符串可以為NameSpacel.Classl 。 步驟103:對構(gòu)建的第一字符串進行運算,得到第一索引值。
具體地,可以采用哈希算法對上述第一字符串進行哈希運算,得到當(dāng)前運行的類的哈希 值,將該哈希值對索引表中的索引值對應(yīng)的類和函數(shù)的總個數(shù)進行取模,得到第一索引值。
歩驟104:在上述索引表中,根據(jù)得到的第一索引值,查找與該第一索引值對應(yīng)的第一 定位值。
在本實施例中,.Net卡內(nèi)的索引表中的索引值均按照與生成第一索引值相同的方法生成, 通常該索引表中包括.Net卡內(nèi)的程序集中調(diào)用的所有類和所有函數(shù)相對應(yīng)的索引值。另外, 該索引表可以存儲于.Net卡內(nèi)部的程序集中。步驟105:根據(jù)得到的第一定位值,在.Net卡的運行類庫中,找到當(dāng)前運行的類,并調(diào) 用該類的實體。
其中,.Net卡的運行類庫可以為標(biāo)準(zhǔn)類庫的全部內(nèi)容或部分內(nèi)容,該運行類庫中通常包 括.Net卡內(nèi)的程序集中涉及到的所有類和函數(shù)。該運行類庫通常與.Net卡-起提供給用戶。 本實施例中,類的查找通過一次查找即可以實現(xiàn)成功定位,進而調(diào)用該類。 本實施例通過構(gòu)建字符串并根據(jù)預(yù)存的索引表定位待査找的類,提高了程序在.Net卡中 運行時,査找待調(diào)用的類的速度,而且索引k占用的.Net卡內(nèi)存少,簡單方便,容易實現(xiàn)。
實施扭J 2
參見圖2,本發(fā)明實施例還提供了一種基于.Net卡査找類和函數(shù)的方法,應(yīng)用于.Net卡內(nèi) 部的程序集的運行過程中,本實施例以査找函數(shù)為例進行說明,該方法具體包括
步驟201:將.Net卡通過讀卡器或者遠程訪問的方式連接于主機,.Net卡運行其內(nèi)部存儲 區(qū)中存儲的程序集,該.Net卡中還預(yù)存有索引表,索引表中包括索引值和對應(yīng)的用于在類庫 中查找類或函數(shù)的定位值。
步驟202:根據(jù).Net卡當(dāng)前運行的函數(shù)所屬的類的信息,構(gòu)建第一字符串。 具體地,可以用.Net卡當(dāng)前運行的函數(shù)的所屬類的類名和命名空間、該函數(shù)的函數(shù)名與 函數(shù)內(nèi)的每個參數(shù)的類名和命名空間組成第一字符串。例如,當(dāng)前運行的函數(shù)為MyFuiicl, 其所屬的類為Classl,該類的命名空間為NameSpacel,函數(shù)內(nèi)有兩個參數(shù) NameSpace2.Class3和NameSpace3.Class5,則構(gòu)建的第一字符串可以如下 NameSpacel.Classl (MyFuncl) NameSpace2.Class3, NameSpace3.Class5 其中,可以在第一字符串中加入限定符號以區(qū)分各個組成,比如用括號將函數(shù)名稱括起 來,每個參數(shù)用逗號隔開等等,從而避免得到的第一字符串沖突。
步驟203:對構(gòu)建的第一字符串進行運算,得到第一索引值。
具體地,可以采用哈希算法對上述第一字符串進行哈希運算,得到當(dāng)前運行的函數(shù)的哈 希值,將該哈希值對索引表中的索引值對應(yīng)^類和函數(shù)的總個數(shù)進行取模,得到第一索引值。
步驟204:在上述索引表中,根據(jù)得到的第一索引值,査找與該第一索引值對應(yīng)的第一
定位值。
在本實施例中,.Net卡內(nèi)的索引表中的索引值均按照與生成第一索引值相同的方法生成, 通常該索引表中包括.Net卡內(nèi)的程序集中調(diào)用的所有類和所有函數(shù)相對應(yīng)的索引值。另外, 該索弓i表可以存儲于.Net卡內(nèi)部的程序集中。步驟205:根據(jù)得到的第一定位值,在.Net卡的運行類庫中,找到當(dāng)前運行的函數(shù),并 調(diào)用該函數(shù)的實體。
其中,.Net卡的運行類庫可以為標(biāo)準(zhǔn)類庫的全部內(nèi)容或部分內(nèi)容,該運行類庫中通常包 括.Net卡內(nèi)的程序集中涉及到的所有類和函數(shù)。該運行類庫通常與.Net卡一起提供給用戶。
本實施例中對于重載函數(shù)、以及既沒有重載又沒有繼承情況的函數(shù),可以實現(xiàn)一次查找 即能成功定位,對于繼承函數(shù)和重寫函數(shù)(即虛函數(shù)),則索引表中可能不包含上述第一索引 值,因此,進一歩地,上述方法還包括
當(dāng)索引表中未包含第一索引值時,將.Net卡當(dāng)前運行的函數(shù)所屬的類作為當(dāng)前類,根據(jù) 當(dāng)前類的父類的信息與函數(shù)的信息,構(gòu)建第二字符串,運算第二字符串得到第二索引值;判 斷索引表中是否包含第二索引值;如果是,則在索引表中,根據(jù)第二索引值査找對應(yīng)的第二 定位值,根據(jù)第二定位值,在.Net卡的運行類庫中,找到.Net卡當(dāng)前運行的類;否則,將父 類作為當(dāng)前類,按照與得到第二索引值相同的方法進行處理,直到得到包含在索引表中的第 三索引值,在索引表中,根據(jù)第三索引值查找對應(yīng)的第三定位值,根據(jù)第三定位值,在.Net 卡的運行類庫中,找到.Net卡當(dāng)前運行的類。
例如,查找函數(shù)Funcl,其所屬的類為Classl,根據(jù)該類和函數(shù)得到的第一索引值未在 索引表中找到,則根據(jù)Classl的父類Class2與該函數(shù)得到第二索引值,如果索引表中也未包 含第二索引值,則根據(jù)<2^52的父類(:^33''與該函數(shù)得到第三索引值,依此類推,直到得到 一個索引值,能夠在索引表中找到該索引值,從而得到對應(yīng)的定位值,根據(jù)該定位值在類庫 中完成對該函數(shù)的査找。
本實施例通過構(gòu)建字符串并根據(jù)預(yù)存的索引表定位待查找的函數(shù),提高了程序在.Net卡 中運行時,查找待調(diào)用的函數(shù)的速度,而且索引表占用的.Net卡內(nèi)存少,簡單方便,容易實 現(xiàn)。另外,對于繼承函數(shù)和重寫函數(shù),通過多次査找,可以實現(xiàn)在索引表中找到索引值,從 而實現(xiàn)成功定位。
實施例3
參見圖3,本發(fā)明實施例還提供了一種.^et卡,具體包括 存儲模塊,用于存儲程序集和索引表;
構(gòu)建P塊,用于當(dāng).Net卡運行存儲模塊存儲的程序集時,根據(jù)當(dāng)前運行的類的信息,或 者根據(jù)當(dāng)前運行的函數(shù)所屬類的信息和函數(shù)的信息,構(gòu)建第一字符串; 運算模塊,用于運算構(gòu)建模塊生成的第一字符串得到第一索引值;查找模塊,用于在存儲模塊存儲的索引表中,根據(jù)運算模塊得到的第一索引值査找對應(yīng) 的第一定位值,索引表中的索引值按照與生成第一索引值相同的方法生成;還用于根據(jù)第一 定位值,在.Net卡的運行類庫中,找到類或函數(shù)。
其中,上述構(gòu)建模塊具體包括-
第一構(gòu)建單元,用于當(dāng).Net卡運行存儲模塊存儲的程序集時,用.Net卡當(dāng)前運行的類的 類名和命名空間組成第一字符串。 或者,上述構(gòu)建模塊具體包括
第二構(gòu)建單元,用于當(dāng).Net卡運行存儲模塊存儲的程序集時,用.Net卡當(dāng)前運行的函數(shù) 的所屬類的類名和命名空間、函數(shù)的函數(shù)名與函數(shù)的每個參數(shù)的類名和命名空間組成第一字 符串。
進一步地,圖3中的運算模塊可以具體包括
哈希運算單元,用于采用哈希算法對構(gòu)建模塊生成的第一字符串進行哈希運算,得到.Net 卡當(dāng)前運行的類或函數(shù)的哈希值;
取模運算單元,用于將哈希運算單元得到的哈希值對索引表中的索引值對應(yīng)的類和函數(shù) 的總個數(shù)進行取模,得到第一索引值。
另外,圖3中的構(gòu)建模塊還用于當(dāng)索引表中未包含運算模塊得到的第一索引值時,將.Net 卡當(dāng)前運行的函數(shù)所屬的類作為當(dāng)前類,根據(jù)當(dāng)前類的父類的信息與函數(shù)的信息,構(gòu)建第二 字符串;運算模塊還用于運算構(gòu)建模塊生成的第二字符串得到第二索引值;
相應(yīng)地,.Net卡還包括
判斷模塊,用于判斷索引表中是否包含運算模塊得到的第二索引值; 而且,查找模塊還用于當(dāng)判斷模塊判斷的結(jié)果為是時,在索引表中,根據(jù)第二索引值査 找對應(yīng)的第二定位值,根據(jù)第二定位值,在.Net卡的運行類庫中,找到.Net卡當(dāng)前運行的類; 當(dāng)判斷模塊判斷的結(jié)果為否時,將父類作為當(dāng)前類,按照與得到第二索引值相同的方法進行 處理,直到得到包含在索引表中的第三索引值,在索引表中,根據(jù)第三索引值査找對應(yīng)的第 三定位值,根據(jù)第三定位值,在.Net卡的運行類庫中,找到.Net卡當(dāng)前運行的類。 本實施例中的索引表可以存儲于.Net卡內(nèi)部的程序集中。
本實施例通過構(gòu)建字符串并根據(jù)預(yù)存的索引表定位待查找的類或函數(shù),提高了程序 在.Net卡中運行時,査找待調(diào)用的類或函數(shù)的速度,而且索引表占用的.Net卡內(nèi)存少,簡單 方便,容,實現(xiàn)。另外,對于繼承函數(shù)和重寫函數(shù),通過根據(jù)父類的信息進行査找,可以實 現(xiàn)在索引表中找到索引值,從而實現(xiàn)成功定位。
11以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之 內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1. 一種基于.Net卡查找類和函數(shù)的方法,其特征在于,應(yīng)用于.Net卡內(nèi)部的程序集的運行過程中,所述方法包括根據(jù)所述. Net卡當(dāng)前運行的類的信息,或者根據(jù)所述.Net卡當(dāng)前運行的函數(shù)所屬類的信息和所述函數(shù)的信息,構(gòu)建第一字符串;運算所述第一字符串得到第一索引值;在所述. Net卡內(nèi)預(yù)先存儲的索引表中,根據(jù)所述第一索引值查找對應(yīng)的第一定位值,所述索引表中的索引值按照與生成所述第一索引值相同的方法生成;根據(jù)所述第一定位值,在所述.Net卡的運行類庫中,找到所述類或函數(shù)。
2. t艮據(jù)權(quán)利要求1所述的基于.Net卡查找類和函數(shù)的方法,其特征在于,所述根據(jù)所 述.Net卡當(dāng)前運行的類的信息,構(gòu)建第一字符串,具體為用所述.Net卡當(dāng)前運行的類的類名和命名空間組成第一字符串。
3. 根據(jù)權(quán)利要求1所述的基于.Net卡査找類和函數(shù)的方法,其特征在于,所述根據(jù)所 述.Net卡當(dāng)前運行的函數(shù)所屬類的信息和所述函數(shù)的信息,構(gòu)建第一字符串,具體為用所述.Net卡當(dāng)前運行的函數(shù)的所屬類的類名和命名空間、所述函數(shù)的函數(shù)名與所述函 數(shù)的每個參數(shù)的類名和命名空間組成第一字符串。
4. 根據(jù)權(quán)利要求l所述的基于.Net卡査找類和函數(shù)的方法,其特征在于,所述方法還包括當(dāng)所述索引表中未包含所述第一索引值時,將所述.Net卡當(dāng)前運行的函數(shù)所屬的類作為當(dāng)前類,根據(jù)所述當(dāng)前類的父類的信息與所述函數(shù)的信息,構(gòu)建第二字符串,運算所述第二 字符串得到第二索引值;判斷所述索引表中是否包含所述第二索引值;如果是,則在所述索引表中,根據(jù)所述第二索引值査找對應(yīng)的第二定位值,根據(jù)所述第 二定位值,在所述.Net卡的運行類庫中,找判所述.Net卡當(dāng)前運行的類;否則,將所述父類作為當(dāng)前類,按照與得到所述第二索引值相同的方法進行處理,直到 得到包含在所述索引表中的第三索引值,在所述索引表中,根據(jù)所述第三索引值査找對應(yīng)的.第三定位值,根據(jù)所述第三定位值,在所述Wet卡的運行類庫中,找到所述.Net卡當(dāng)前運行 的類。
5. 根據(jù)權(quán)利要求l所述的基于.Net卡查找類和函數(shù)的方法,其特征在于,所述索引表存 儲于所述.Net卡內(nèi)部的所述程序集中。
6. —種.Net卡,其特征在于,所述.Net卡包括 存儲模塊,用于存儲程序集和索引表;構(gòu)建模塊,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,根據(jù)當(dāng)前運行的類的 信息,或者根據(jù)當(dāng)前運行的函數(shù)所屬類的信息和所述函數(shù)的信息,構(gòu)建第一字符串; 運算模塊,用于運算所述構(gòu)建模塊生成的第一字符串得到第一索引值; 査找模塊,用于在所述存儲模塊存儲的索引表中,根據(jù)所述運算模塊得到的第一索引值 查找對應(yīng)fej第一定位值,所述索引表中的索引值按照與生成所述第一索引值相同的方法生成; 還用于根據(jù)所述第一定位值,在所述.Net卡的運行類庫中,找到所述類或函數(shù)。
7. 根據(jù)權(quán)利要求6所述的.Net卡,其特征在于,所述構(gòu)建模塊具體包括 第一構(gòu)建單元,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,用所述.Net卡當(dāng)前運行的類的類名和命名空間組成第一字符串。
8.根據(jù)權(quán)利要求6所述的.Net卡,其特征在于,所述構(gòu)建模塊具體包括第二構(gòu)建單元,用于當(dāng)所述.Net卡運行所述存儲模塊存儲的程序集時,用所述.Net卡當(dāng) 前運行的函數(shù)的所屬類的類名和命名空間、所述函數(shù)的函數(shù)名與所述函數(shù)的每個參數(shù)的類名 和命名空間組成第一字符串。
9.根據(jù)權(quán)利要求6所述的.Net卡,其特征在于,所述構(gòu)建模塊還用于當(dāng)所述索引表中未包含所述運算模塊得到的第一索引值時,將所 述.Net卡當(dāng)前運行的函數(shù)所屬的類作為當(dāng)前類,根據(jù)所述當(dāng)前類的父類的信息與所述函數(shù)的 信息,構(gòu)建第二字符串;所述運算模塊還用于運算所述構(gòu)建模塊一成的第二字符串得到第二索引值;相應(yīng)地,所述.Net卡還包括判斷模塊,用于判斷所述索引表中是否包含所述運算模塊得到的第二索引值; 而且,所述査找模塊還用于當(dāng)所述判斷模塊判斷的結(jié)果為是時,在所述索引表中,根據(jù) 所述第二索引值査找對應(yīng)的第二定位值,根據(jù)所述第二定位值,在所述.Net卡的運行類庫中, 找到所述.Net卡當(dāng)前運行的類;當(dāng)所述判斷模塊判斷的結(jié)果為否時,將所述父類作為當(dāng)前類, 按照與得到所述第二索引值相同的方法進行處理,直到得到包含在所述索引表中的第三索引 值,在所述索引表中,根據(jù)所述第三索引值査找對應(yīng)的第三定位值,根據(jù)所述第三定位值, 在所述.Net卡的運行類庫中,找到所述.Net卡當(dāng)前運行的類。
10.根據(jù)權(quán)利要求6所述的.Net卡,其特征在于,所述索引表存儲于所述.Net卡內(nèi)部的 所述程序集中。
全文摘要
本發(fā)明公開了一種基于.Net卡查找類和函數(shù)的方法和.Net卡,屬于信息安全領(lǐng)域。所述方法包括根據(jù).Net卡當(dāng)前運行的類的信息,或者根據(jù).Net卡當(dāng)前運行的函數(shù)所屬類的信息和該函數(shù)的信息,構(gòu)建第一字符串;運算第一字符串得到第一索引值;在.Net卡內(nèi)預(yù)先存儲的索引表中,根據(jù)第一索引值查找對應(yīng)的第一定位值,該索引表中的索引值按照與生成第一索引值相同的方法生成;根據(jù)第一定位值,在.Net卡的運行類庫中,找到當(dāng)前運行的類或函數(shù)。所述.Net卡包括存儲模塊、構(gòu)建模塊、運算模塊和查找模塊。本發(fā)明提高了程序在.Net卡中運行時查找類或函數(shù)的速度,而且索引表占用的.Net卡內(nèi)存少,簡單方便,容易實現(xiàn)。
文檔編號G06F9/44GK101419549SQ20081010646
公開日2009年4月29日 申請日期2008年5月13日 優(yōu)先權(quán)日2008年5月13日
發(fā)明者于華章, 舟 陸 申請人:北京飛天誠信科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
砀山县| 垦利县| 吴桥县| 临夏市| 大埔区| 囊谦县| 买车| 韩城市| 南康市| 河北省| 普安县| 始兴县| 开原市| 阳江市| 达州市| 恩施市| 图们市| 通榆县| 丽水市| 舟曲县| 宣汉县| 西宁市| 方山县| 义马市| 呈贡县| 新建县| 谢通门县| 沭阳县| 湄潭县| 彩票| 无锡市| 休宁县| 荥阳市| 平罗县| 确山县| 阿城市| 和静县| 菏泽市| 永城市| 抚宁县| 泾源县|