亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

在64位系統(tǒng)中利用32位主程序攔截64位信息的方法

文檔序號:6651559閱讀:118來源:國知局
專利名稱:在64位系統(tǒng)中利用32位主程序攔截64位信息的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種32位主程序攔截信息的方法,尤其涉及一種在64位系統(tǒng)中利用32位主程序攔截64位信息的方法。
背景技術(shù)
目前,通常在實(shí)現(xiàn)對遠(yuǎn)程服務(wù)器進(jìn)行遠(yuǎn)程控制時,其核心技術(shù)就是對使用Windows系統(tǒng)的服務(wù)器(Windows Server)的遠(yuǎn)程控制中采用的攔截函數(shù)運(yùn)行機(jī)制,這也是市面上大多數(shù)類似軟件都采用的方式,其原理就是使用系統(tǒng)中全面攔截函數(shù)截獲系統(tǒng)內(nèi)所有的信息,而后通過分析信息的種類和需要更新的范圍傳送圖像到客戶端(Client),而后客戶端再將對應(yīng)的圖像顯示在本地的窗口上。這種方式的優(yōu)勢在于每次傳送的圖形都是需要更新區(qū)域的圖形,而不是全部的桌面圖像,一定程度上減輕了網(wǎng)絡(luò)傳輸?shù)膲毫Σ⑻岣吡藗鬏斔俣取?br> 但是當(dāng)服務(wù)器采用64位系統(tǒng),而主程序卻為32位,上述方式就出現(xiàn)了問題,32位主程序中的32位攔截函數(shù)無法攔截服務(wù)器64位系統(tǒng)內(nèi)運(yùn)行的64位程序的64位信息,那么客戶端則無法得到需要的更新的數(shù)據(jù),如鼠標(biāo)的信息等。
經(jīng)過研究發(fā)現(xiàn),32位主程序中運(yùn)行的32位攔截函數(shù)僅僅能攔截到64位系統(tǒng)運(yùn)行的32位程序的信息,卻不能成功攔截64位系統(tǒng)運(yùn)行的64位程序的信息;而64位攔截函數(shù)能攔截到64位系統(tǒng)運(yùn)行的64位程序的信息,卻不能成功攔截64位系統(tǒng)運(yùn)行的32位程序的信息。因此,服務(wù)器使用的32位主程序若要攔截采用64位系統(tǒng)的服務(wù)器運(yùn)行程序的所有信息,就不能僅用32位攔截函數(shù)或者64位攔截函數(shù)。

發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,用以令64位系統(tǒng)的服務(wù)器中運(yùn)行的32位主程序能夠攔截系統(tǒng)的所有信息。
為了實(shí)現(xiàn)上述目的,本發(fā)明提供了一種在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特點(diǎn)在于,該方法包含以下步驟(1)設(shè)置32位的包含攔截函數(shù)的動態(tài)鏈接程序庫及64位的包含攔截函數(shù)的動態(tài)鏈接程序庫;(2)設(shè)置多個64位攔截函數(shù)的調(diào)用模塊;(3)設(shè)置該64位攔截函數(shù);(4)通過該32位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有32位程序的信息,并通過該64位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有64位程序的信息;(5)產(chǎn)生一套接通信服務(wù)程序;(6)發(fā)送移除該32位攔截函數(shù)與該64位攔截函數(shù)的信息;以及(7)該32位主程序移除該32位攔截函數(shù),同時移除該64位攔截函數(shù)。
上述在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特點(diǎn)在于,該64位攔截函數(shù)設(shè)置在原有的32位攔截函數(shù)之后。
上述在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特點(diǎn)在于,該64位攔截函數(shù)是全面的攔截函數(shù),其在該64位包含攔截函數(shù)的動態(tài)鏈接程序庫中設(shè)置。
上述在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,該64位攔截函數(shù)的調(diào)用模塊為后臺程序,用于設(shè)置該64位攔截函數(shù)。
上述在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特點(diǎn)在于,所述各64位攔截函數(shù)的調(diào)用模塊調(diào)用該攔截函數(shù)的動態(tài)鏈接程序庫中的多個入口函數(shù),并通過該入口函數(shù)傳遞提供至該64位攔截函數(shù)的參數(shù),以設(shè)置該64位攔截函數(shù)。
上述在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特點(diǎn)在于,還包含如下步驟當(dāng)該32位主程序移除該32位攔截函數(shù)時,通過該套接通信服務(wù)程序發(fā)送移除該64位攔截函數(shù)的信息給該64位攔截函數(shù)的調(diào)用模塊;當(dāng)該64位攔截函數(shù)的調(diào)用模塊收到移除該64位攔截函數(shù)的信息,該64位攔截函數(shù)的調(diào)用模塊調(diào)用該入口函數(shù),移除該64位攔截函數(shù);以及向該32位主程序發(fā)送該64位攔截函數(shù)已移除的信息。
本發(fā)明的功效在于,對已有的32位主程序改動量小,基本上在原先采用32位操作系統(tǒng)的服務(wù)器上運(yùn)行的32位主程序變化很少,也不需要重新編譯成64位系統(tǒng)上的程序。原來32位攔截函數(shù)部分無須做任何動作。即使用已有的32位主程序就可以在服務(wù)器采用的64位系統(tǒng)上正確運(yùn)行,并通過64位攔截函數(shù)攔截64位信息。
采用本發(fā)明的方法,可以適用到64位Windows系統(tǒng)上使用攔截函數(shù)機(jī)制的所有相關(guān)程序,同時還不會影響到32位系統(tǒng)上此類程序的使用。
以下結(jié)合附圖和具體實(shí)施例對本發(fā)明進(jìn)行詳細(xì)描述,但不作為對本發(fā)明的限定。


圖1為本發(fā)明的64位Windows系統(tǒng)的系統(tǒng)方塊圖;圖2為本發(fā)明的32位主程序中攔截64位信息的方法流程圖;圖3為本發(fā)明的移除64位攔截函數(shù)的方法流程圖;以及圖4為本發(fā)明在32位主程序中使用64位攔截函數(shù)的方法流程圖。
其中,附圖標(biāo)記100 32位主程序220 32位包含攔截函數(shù)的動態(tài)鏈接程序庫310 64位攔截函數(shù)調(diào)用模塊320 64位包含攔截函數(shù)的動態(tài)鏈接程序庫步驟101 設(shè)置32位的包含攔截函數(shù)的動態(tài)鏈接程序庫及64位的包含攔截函數(shù)的動態(tài)鏈接程序庫步驟102 設(shè)置多個64位攔截函數(shù)的調(diào)用模塊步驟103 設(shè)置64位攔截函數(shù)步驟104 32位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有32位程序的信息,64位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有64位程序的信息步驟105 產(chǎn)生一套接通信服務(wù)程序步驟106 判斷是否發(fā)送移除攔截函數(shù)之信息步驟107 32位主程序移除32位攔截函數(shù),同時移除64位攔截函數(shù)步驟201 設(shè)置64位的包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置64位攔截函數(shù),并設(shè)置此攔截函數(shù)步驟202 產(chǎn)生一套接通信服務(wù)程序步驟203 判斷套接通信服務(wù)程序是否發(fā)送移除64位攔截函數(shù)的信息步驟204 調(diào)用攔截函數(shù)程序入口函數(shù),移除攔截函數(shù),并發(fā)送答復(fù)數(shù)據(jù)步驟301 設(shè)置多個32位包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置32位攔截函數(shù),并設(shè)置此攔截函數(shù)步驟302 產(chǎn)生一套接通信服務(wù)程序步驟303 設(shè)置多個64位包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置64位攔截函數(shù),并設(shè)置此攔截函數(shù)步驟304 處理32位攔截函數(shù)和64位攔截函數(shù)發(fā)送的信息步驟305 判斷是否發(fā)送移除32位攔截函數(shù)的信息步驟306 移除32位攔截函數(shù)步驟307 連接套接通信服務(wù)程序,判斷是否發(fā)送移除64位攔截函數(shù)的信息步驟308 移除64位攔截函數(shù)具體實(shí)施方式
請參考圖1,圖中表示了本發(fā)明的64位Windows系統(tǒng)的系統(tǒng)方塊圖,包含32位主程序100;32位包含攔截函數(shù)的動態(tài)鏈接程序庫220,由上述32位主程序100設(shè)置或者移除,并且此32位包含攔截函數(shù)的動態(tài)鏈接程序庫220將截獲到的32位信息發(fā)送至上述32位主程序100;64位攔截函數(shù)調(diào)用模塊310,由上述32位主程序100設(shè)置或者移除,用以設(shè)置或者移除64位包含攔截函數(shù)的動態(tài)鏈接程序庫;64位包含攔截函數(shù)的動態(tài)鏈接程序庫320,將截獲到的64位信息發(fā)送至上述32位主程序100。
64位攔截函數(shù)調(diào)用模塊310是后臺程序,僅僅起到一個設(shè)置64位攔截函數(shù)的作用,需要提供給攔截函數(shù)的參數(shù),都可以通過命令方式將參數(shù)傳遞給此程序,而由此程序在運(yùn)行時調(diào)用64位包含攔截函數(shù)的動態(tài)鏈接程序庫320中的入口函數(shù),以便設(shè)置64位攔截函數(shù)。
因為攔截函數(shù)是應(yīng)用于全面,全面的攔截函數(shù)必須放在動態(tài)鏈接程序庫中設(shè)置,所以需要一個64位包含攔截函數(shù)的動態(tài)鏈接程序庫320。64位攔截函數(shù)從程序上基本和32位程序攔截函數(shù)相同,只是編譯成64位平臺上的執(zhí)行程序。32位攔截函數(shù)和64位攔截函數(shù)都完成同樣的一件工作,就是將攔截到的信息發(fā)送給32位主程序100,由主程序統(tǒng)一進(jìn)行處理,不同之處在于64位攔截函數(shù)能檢測到64位信息,32位攔截函數(shù)能夠檢測到32位信息。
原先的32位主程序100仍然按照32位進(jìn)行編譯,所需要修改的部分就是在以前調(diào)用32位包含攔截函數(shù)的動態(tài)鏈接程序庫220的地方增加設(shè)置上述64位攔截函數(shù)調(diào)用模塊310的過程。一旦64位攔截函數(shù)設(shè)置,64位攔截函數(shù)調(diào)用模塊310就沒有具體意義了。在32位主程序100中摘掉32位攔截函數(shù)時也同樣要摘掉64位攔截函數(shù)。
在本發(fā)明的一實(shí)施例中通過套接(socket)通信服務(wù)程序移除64位攔截函數(shù),現(xiàn)在請參考圖3,該圖為本發(fā)明移除64位攔截函數(shù)的方法流程圖,如圖所示,本發(fā)明的移除64位攔截函數(shù)的方法包含以下步驟步驟201,設(shè)置64位的包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置64位攔截函數(shù),并設(shè)置此攔截函數(shù);步驟202,產(chǎn)生一套接通信服務(wù)程序;步驟203,判斷套接通信服務(wù)程序是否發(fā)送移除64位攔截函數(shù)的信息;步驟204,當(dāng)發(fā)出此移除信息時,調(diào)用攔截函數(shù)程序入口函數(shù),移除攔截函數(shù),并發(fā)送答復(fù)數(shù)據(jù);若沒有發(fā)出此移除信息,則64位攔截函數(shù)一直等待此移除信息。
在本發(fā)明的一實(shí)施例中,32位主程序100,其功能是提供服務(wù)給客戶端,使得客戶端能夠完全地控制服務(wù)器所在的計算機(jī)。隨著各種計算機(jī)硬件軟件的不斷升級以及64位處理器的出現(xiàn),于是微軟也推出了其64位操作系統(tǒng),上述32位程序為了能在采用64位操作系統(tǒng)的服務(wù)器上使用,于是應(yīng)用本發(fā)明的技術(shù)。
如圖2所示,此圖為本發(fā)明的32位主程序中攔截64位信息的方法流程圖,包含以下步驟步驟101,設(shè)置32位的包含攔截函數(shù)的動態(tài)鏈接程序庫及64位的包含攔截函數(shù)的動態(tài)鏈接程序庫,此步驟用以設(shè)置64位攔截函數(shù),即提供多個入口函數(shù),用以設(shè)置多個64位攔截函數(shù)能夠截獲系統(tǒng)上運(yùn)行的所有64位程序的所有信息以及卸載64位攔截函數(shù),64位攔截函數(shù)所截獲的信息會根據(jù)需要轉(zhuǎn)換成屏幕要更新的區(qū)域范圍數(shù)據(jù),發(fā)送給32位主程序進(jìn)行處理;步驟102,設(shè)置多個64位攔截函數(shù)的調(diào)用模塊,首先分析系統(tǒng)調(diào)用64位攔截函數(shù)時的命令行參數(shù),得到入口地址,用以調(diào)用設(shè)置64位攔截函數(shù)的函數(shù);步驟103,設(shè)置64位攔截函數(shù);步驟104,通過32位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有32位程序的信息,并通過64位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有64位程序的信息;步驟105,產(chǎn)生一套接通信服務(wù)程序,用以監(jiān)視某一端口,一旦有用戶連接,則收取其接收到的數(shù)據(jù),判斷其數(shù)據(jù)內(nèi)容,如果是預(yù)先約定的數(shù)據(jù),則說明32位主程序需要移除攔截函數(shù)程序,則發(fā)送移除攔截函數(shù)信息給32位主程序;步驟106,判斷是否發(fā)送有移除32位攔截函數(shù)的信息;步驟107,當(dāng)發(fā)出此移除信息時,32位主程序移除32位攔截函數(shù),移除64位攔截函數(shù),若沒有發(fā)出此移除信息,則32位攔截函數(shù)一直等待此移除信息發(fā)出。
由于32位主程序100已經(jīng)在需要的時候,比如有客戶連接的時候設(shè)置了32位攔截函數(shù),所要完成就是在設(shè)置了32位攔截函數(shù)之后設(shè)置64位攔截函數(shù),并將所需的命令參數(shù)也設(shè)置好,命令行數(shù)是約定的32位主程序100的接收信息的窗口句柄等,一旦執(zhí)行,64位攔截函數(shù)就可以開始工作,32位主程序能夠接收到64位包含攔截函數(shù)的動態(tài)鏈接程序庫320發(fā)送來的信息。
在客戶斷掉連接,或者其它的某些情況下,服務(wù)器需要移除攔截函數(shù),于是程序產(chǎn)生了一個套接通信服務(wù)程序,用來連接攔截函數(shù)運(yùn)行中產(chǎn)生的服務(wù)器,將信息傳遞至服務(wù)器,同時等待從服務(wù)器返回的信息,而后就可以正式確認(rèn)攔截函數(shù)已經(jīng)被摘掉。
其流程圖如圖4所示,此圖為本發(fā)明的在32位主程序中使用64位攔截函數(shù)的方法流程圖,包含步驟301,設(shè)置多個32位的包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置32位攔截函數(shù),并設(shè)置此攔截函數(shù);步驟302,產(chǎn)生一套接通信服務(wù)程序;步驟303,設(shè)置多個64位的包含攔截函數(shù)的動態(tài)鏈接程序庫,設(shè)置64位攔截函數(shù),并設(shè)置此攔截函數(shù);步驟304,處理32位攔截函數(shù)和64位攔截函數(shù)發(fā)送的信息;步驟305,判斷32位主程序是否發(fā)送移除32位攔截函數(shù)的信息;步驟306,當(dāng)發(fā)出此移除信息時,移除32位攔截函數(shù);若沒有發(fā)出此移除信息,則32位攔截函數(shù)一直等待此移除信息發(fā)出;步驟307,判斷套接通信服務(wù)程序是否發(fā)送移除64位攔截函數(shù)的信息;步驟308,當(dāng)發(fā)出此移除信息時,移除64位攔截函數(shù),若沒有發(fā)出此移除信息,則64位攔截函數(shù)一直等待此移除信息發(fā)出。
當(dāng)然,本發(fā)明還可有其他多種實(shí)施例,在不背離本發(fā)明精神及其實(shí)質(zhì)的情況下,熟悉本領(lǐng)域的技術(shù)人員可根據(jù)本發(fā)明作出各種相應(yīng)的改變和變形,但這些相應(yīng)的改變和變形都應(yīng)屬于本發(fā)明權(quán)利要求的保護(hù)范圍。
權(quán)利要求
1.一種在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,該方法包含以下步驟(1)設(shè)置32位的包含攔截函數(shù)的動態(tài)鏈接程序庫及64位的包含攔截函數(shù)的動態(tài)鏈接程序庫;(2)設(shè)置多個64位攔截函數(shù)的調(diào)用模塊;(3)設(shè)置該64位攔截函數(shù);(4)通過該32位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有32位程序的信息,并通過該64位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有64位程序的信息;(5)產(chǎn)生一套接通信服務(wù)程序;(6)發(fā)送移除該32位攔截函數(shù)與該64位攔截函數(shù)的信息;以及(7)該32位主程序移除該32位攔截函數(shù),同時移除該64位攔截函數(shù)。
2.根據(jù)權(quán)利要求1所述的在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,該64位攔截函數(shù)設(shè)置在原有的32位攔截函數(shù)之后。
3.根據(jù)權(quán)利要求1所述的在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,該64位攔截函數(shù)是全面的攔截函數(shù),其在該64位包含攔截函數(shù)的動態(tài)鏈接程序庫中設(shè)置。
4.根據(jù)權(quán)利要求1所述的在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,該64位攔截函數(shù)的調(diào)用模塊為后臺程序,用于設(shè)置該64位攔截函數(shù)。
5.根據(jù)權(quán)利要求4所述的在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,所述各64位攔截函數(shù)的調(diào)用模塊調(diào)用該攔截函數(shù)的動態(tài)鏈接程序庫中的多個入口函數(shù),并通過該入口函數(shù)傳遞提供至該64位攔截函數(shù)的參數(shù),以設(shè)置該64位攔截函數(shù)。
6.根據(jù)權(quán)利要求4所述的在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,其特征在于,還包含如下步驟當(dāng)該32位主程序移除該32位攔截函數(shù)時,通過該套接通信服務(wù)程序發(fā)送移除該64位攔截函數(shù)的信息給該64位攔截函數(shù)的調(diào)用模塊;當(dāng)該64位攔截函數(shù)的調(diào)用模塊收到移除該64位攔截函數(shù)的信息,該64位攔截函數(shù)的調(diào)用模塊調(diào)用該入口函數(shù),移除該64位攔截函數(shù);以及向該32位主程序發(fā)送該64位攔截函數(shù)已移除的信息。
全文摘要
本發(fā)明涉及一種在64位系統(tǒng)中利用32位主程序攔截64位信息的方法,包含如下步驟設(shè)置32位的包含攔截函數(shù)的動態(tài)鏈接程序庫及64位的包含攔截函數(shù)的動態(tài)鏈接程序庫;設(shè)置多個64位攔截函數(shù)的調(diào)用模塊;設(shè)置64位攔截函數(shù);產(chǎn)生一套接通信服務(wù)程序;通過32位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有32位程序的信息,并通過64位攔截函數(shù)攔截系統(tǒng)中運(yùn)行的所有64位程序的信息;發(fā)送移除32位攔截函數(shù)與64位攔截函數(shù)的信息;以及32位主程序移除32位攔截函數(shù),同時移除64位攔截函數(shù)。本發(fā)明使用已有的32位主程序就可以在服務(wù)器采用的64位系統(tǒng)上正確運(yùn)行,并通過64位攔截函數(shù)攔截64位信息。
文檔編號G06F9/44GK1991745SQ20051013289
公開日2007年7月4日 申請日期2005年12月27日 優(yōu)先權(quán)日2005年12月27日
發(fā)明者馬春梅, 陳玄同, 劉文涵 申請人:英業(yè)達(dá)股份有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1