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

一種用于實現(xiàn)文件收集、軟件包自動安裝的方法及裝置的制作方法

文檔序號:6374269閱讀:227來源:國知局

專利名稱::一種用于實現(xiàn)文件收集、軟件包自動安裝的方法及裝置的制作方法
技術領域
:本發(fā)明涉及信息收集
技術領域
,特別是涉及一種用于實現(xiàn)文件收集的方法及裝置。
背景技術
:隨著互聯(lián)網的日益發(fā)展,用戶對各種互聯(lián)網業(yè)務的服務商的要求也越來越高,于是這些服務商必須不斷提高自身為用戶提供的服務,才能滿足用戶的需求,這也就要求這些服務商自身要獲取更多的有價值的信息。在這些有價值的信息中,各種文件的收集尤為重要,比如PE(PortableExecute,可移植的執(zhí)行體)類文件和腳本類的文件等等。發(fā)明人在經過大量研究后發(fā)現(xiàn),可以采用UniversalExtractor(通用提取)等工具來收集一些文件。UniversalExtractor是一個可以從多種類型的存檔文件中提取文件的程序,無論是簡單的ZIP文件、安裝程序(如Wise或NSIS),還是Windows安裝程序(.msi)包。只要指定待提取的文件和目標文件夾,UniversalExtractor會自動分析文件類型并完成提取。但是,UniversalExtractor只能將一些已知的打包格式識別出來,進而提取文件,雖然已知的打包格式很多,但仍然有很多新出現(xiàn)的未知打包格式無法識別,進而無法提取這些新出現(xiàn)的未知打包格式的文件。因此,迫切需要本領域技術人員解決的技術問題就在于,如何提供一種更全面、高效的文件收集方法。
發(fā)明內容本發(fā)明提供了一種用于文件收集的方法和裝置,能夠更全面、更高效的收集文件。本發(fā)明還提供了一種用于實現(xiàn)軟件包自動安裝的方法和裝置,能夠提高軟件包的安裝效率,并且可以適用于不同類型軟件包的自動安裝。本發(fā)明提供了如下方案一種用于實現(xiàn)文件收集的方法,包括獲得可安裝的軟件包;運行所述可安裝的軟件包;當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控所述軟件包安裝過程中釋放的文件;收集在所述軟件包的安裝過程中釋放的所需的文件??蛇x的,所述獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息包括調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息包括調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述監(jiān)控所述軟件包安裝過程中釋放出的文件包括通過調用鉤子函數(shù)捕獲到文件操作流,獲得在所述軟件包安裝過程中釋放的文件的文件路徑;所述收集在軟件包的安裝過程中釋放的所需的文件包括根據(jù)所述文件的文件路徑,收集在所述軟件包的安裝過程中釋放的所需的文件??蛇x的,所述收集所需的文件包括從所述軟件包安裝過程中釋放的文件中識別出屬于可移植的執(zhí)行體PE類文件和/或腳本類文件;拷貝所述PE類文件和/或腳本類文件;通過調用系統(tǒng)API函數(shù)獲得所述PE類文件和/或腳本類文件的文件屬性信息??蛇x的,所述獲得PE類文件和/或腳本類文件的文件屬性信息包括獲得所述PE類文件和/或腳本類文件的大小、創(chuàng)建時間、修改時間、文件簽名中的任意一種或多種。可選的,所述模擬點擊包括模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意一種。一種用于實現(xiàn)文件收集的裝置,包括軟件包獲得單元,用于獲得可安裝的軟件包;運行單元,用于運行所述可安裝的軟件包;位置分析單元,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;模擬點擊單元,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控單元,用于監(jiān)控所述軟件包安裝過程中釋放的文件;收集單元,用于收集在所述軟件包的安裝過程中釋放的所需的文件??蛇x的,所述位置分析單元包括第一查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第一分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;第一位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。可選的,所述位置分析單元包括第二查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第三查找單元,用于調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;第二分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;過濾單元,用于通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;第四查找單元,用于根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;第二位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述監(jiān)控單元,具體用于通過調用鉤子函數(shù)捕獲到文件操作流,獲得在所述軟件包安裝過程中釋放的文件的文件路徑;所述收集單元,具體用于根據(jù)所述監(jiān)控單元提供的文件路徑,收集在所述軟件包的安裝過程中釋放的所需的文件??蛇x的,所述收集單元具體包括識別子單元,用于從所述軟件包安裝過程中釋放的文件中識別出屬于PE類的文件和/或腳本類的文件;拷貝子單元,用于拷貝所述PE類文件和/或腳本類文件;屬性獲得子單元,用于通過調用系統(tǒng)API函數(shù)獲得所述PE類文件和/或腳本類文件的文件屬性信息??蛇x的,所述屬性獲得子單元,具體用于獲得所述PE類文件和/或腳本類文件的大小、創(chuàng)建時間、修改時間、文件簽名中的任意一種或多種。一種用于實現(xiàn)軟件包自動安裝的方法,包括獲得可安裝的軟件包;運行所述可安裝的軟件包;當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。可選的,還包括根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息。可選的,還包括分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止??蛇x的,還包括分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;模擬點擊所述組件頁中所有組件類型控件的按鍵??蛇x的,還包括將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;在所述按鍵類型的控件中識別出確認類按鍵;通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;模擬點擊所述提示框中的確認類按鍵。一種用于實現(xiàn)軟件包自動安裝的裝置,包括軟件包獲得單元,用于獲得可安裝的軟件包;運行單元,用于運行所述可安裝的軟件包;第一位置分析單元,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;第一模擬點擊單元,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止??蛇x的,還包括第二位置分析單元,用于根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息??蛇x的,還包括協(xié)議頁識別單元,用于分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;第三位置分析單元,用于如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;第二模擬點擊單元,用于模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。可選的,還包括組件識別單元,用于分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;第三模擬點擊單元,用于模擬點擊所述組件頁中所有組件類型控件的按鍵。可選的,還包括提示框識別單元,用于將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;第五查找單元,用于枚舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;確認識別單元,用于在所述按鍵類型的控件中識別出確認類按鍵;第四位置分析單元,用于通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;第四模擬點擊單元,用于模擬點擊所述提示框中的確認類按鍵??蛇x的,所述模擬點擊單元包括模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意一種。根據(jù)本發(fā)明提供的一種用于實現(xiàn)文件收集的方法和裝置具體實施例,本發(fā)明公開了以下技術效果通過自動安裝軟件包的方式來收集安裝過程中釋放出的文件,使得收集到的文件更全面。而且,由于在進行安裝過程中,是通過分析安裝界面的內容,能夠自動識別出需要點擊的按鍵(比如繼續(xù)安裝類的按鍵),并且在識別之后通過模擬點擊對應的按鍵,實現(xiàn)軟件包的完全自動安裝。因此,安裝軟件包的效率很高,而且對軟件包的類型沒有限制,適用性更廣,所以使得文件收集的效率和全面性都得到了顯著提高。根據(jù)本發(fā)明提供的一種用于實現(xiàn)軟件包自動安裝的方法和裝置實施例,本發(fā)明公開了以下技術效果通過分析安裝界面的內容,能夠自動識別出需要點擊的按鍵(比如繼續(xù)安裝類的按鍵),并且在識別之后通過模擬點擊對應的按鍵,實現(xiàn)軟件包的完全自動安裝。而且,本發(fā)明實施例不需要事先對待安裝的軟件包類型進行識別分析、安裝錄制,而是通過在安裝過程中對安裝界面進行具體分析找出需要模擬點擊的按鍵,從使得本發(fā)明實施例的軟件包自動安裝方案,可以適用于各種類型軟件包的安裝,因此應用范圍更廣,自動安裝的效率更聞。為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I是為本發(fā)明一種用于實現(xiàn)文件收集的方法實施例流程圖;圖2是本發(fā)明一種用于實現(xiàn)文件收集的裝置實施例示意圖;圖3是本發(fā)明一種用于實現(xiàn)軟件包自動安裝的方法實施例流程圖;圖4是本發(fā)明視頻下載器自動安裝具體實施方式中的第一界面示意圖;圖5是本發(fā)明視頻下載器自動安裝具體實施方式中的第二界面示意圖;圖6是本發(fā)明視頻下載器自動安裝具體實施方式中的第三界面示意圖;圖7是本發(fā)明視頻下載器自動安裝具體實施方式中的第四界面示意圖;圖8是本發(fā)明視頻下載器自動安裝具體實施方式中的第五界面示意圖;圖9是本發(fā)明視頻下載器自動安裝具體實施方式中的第六界面示意圖;圖10是本發(fā)明視頻下載器自動安裝具體實施方式中的第七界面示意圖;圖11是本發(fā)明視頻下載器自動安裝具體實施方式中的第八界面示意圖;圖12是本發(fā)明視頻下載器自動安裝具體實施方式中的第九界面示意圖13是本發(fā)明一種用于實現(xiàn)軟件包自動安裝的裝置實施例示意圖。具體實施例方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。請參閱圖1,其為本發(fā)明一種用于實現(xiàn)文件收集的方法第一實施例流程圖。在本實施例中,包括如下步驟步驟110:獲得可安裝的軟件包。在具體實現(xiàn)本步驟的過程中,有多種具體實施方式。比如,可以由服務器通過軟件收集或人工收集當前網絡上提供的下載可安裝的軟件包的鏈接,然后由服務器自動下載或者人工手動下載可安裝的軟件包。再比如,監(jiān)控到某臺計算機上有需要更新的軟件,那么可以去下載該軟件的升級包??砂惭b的軟件包可以是升級的軟件包,也可以是全新的一款可安裝的軟件包。本發(fā)明實施例對如何獲得可安裝的軟件包并沒有限制,只要能夠獲取到可安裝的軟件包,即可應用本發(fā)明實施例的技術方案。步驟120:運行所述可安裝的軟件包。在具體實現(xiàn)時,可以通過點擊來運行可安裝的軟件包。也可以通過調用系統(tǒng)API函數(shù)creatprocess,自動運行可安裝的軟件包,以便達到自動運行的效果。步驟130:當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息。在運行可安裝的軟件包之后,會出現(xiàn)各種安裝界面。進而,就需要對安裝界面進行分析,通過分析安裝界面的內容,獲得安裝界面中繼續(xù)安裝類按鍵的位置信息。本發(fā)明實施例中所述的繼續(xù)安裝類按鍵,包括但不限于“繼續(xù)安裝”、“繼續(xù)”、“下一步”、“next”、“一”等,只要表示要將安裝操作繼續(xù)的按鍵都屬于本發(fā)明實施例中的繼續(xù)安裝類按鍵。獲得繼續(xù)安裝類按鍵的位置信息的具體實現(xiàn)方式有多種,下面僅給出幾種具體實現(xiàn)方式的示例。(一)獲得繼續(xù)安裝類按鍵的位置信息的第一具體實現(xiàn)方式A:調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;B:分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;C:通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。具體而言,對于不同的操作系統(tǒng),調用的API函數(shù)不盡相同,以windows為例,可以調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,控件類型多種多樣,比如Static、各種Button、TRzBitBtn等等。其中,如果控件類型為“Button、TButton、TNewButton、TTntButton.UnicodeClass、obj_BUTT0N、TRzBitBtn,,等類型,則表明該控件是按鍵類型。在找出按鍵類型的控件后,就可以分析這些控件的文本內容,比如分析出其中哪些按鍵上的文本內容屬于繼續(xù)安裝類的文本,比如文本內容是“繼續(xù)安裝”、“繼續(xù)”、“下一步”等等,于是就找到本文內容屬于繼續(xù)安裝類的按鍵。最后,通過調用可以獲得控件位置信息的API函數(shù)獲得繼續(xù)安裝類按鍵的位置信息,如用API函數(shù)FindWindow和FindffindowEx找到控件句柄后,再用GetWindowRect獲取到控件的位置等所需信息。(二)獲得繼續(xù)安裝類按鍵的位置信息的第二具體實施例方式A:調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;B:調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;C:分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;D:通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;E:根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;F:通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。具體言之,第二具體實施方式中的步驟A和第一具體實施方式中的步驟A—樣,所以不再贅述。在本實施方式中的步驟B,在Windows下,可以通過IsWindowEnabled這個WindowsAPI判斷按鍵控件是否可用,即是否可點擊,從而找出不可點擊的按鍵。本實施方式中的步驟C與前文第一實施方式中的步驟C使用的技術原理一樣,只不過查找的不是繼續(xù)安裝類的按鍵,而是查找停止安裝類的按鍵,比如按鍵的文本內容是“取消”、“cancel”、“停止安裝”等代表不再繼續(xù)安裝、停止安裝的意思。之所以本步驟如此操作,是因為通常繼續(xù)安裝類按鍵的文本表示內容多種多樣,可能無法窮盡,而停止安裝類按鍵的文本表示內容相對比較固定、種類較少,因此,可以通過排除法,先找出停止類按鍵,然后再一步步排除。找出不可點擊的按鍵和停止類按鍵之后,剩余的基本就是繼續(xù)安裝類的按鍵和后退安裝類按鍵。通常后退安裝類按鍵和繼續(xù)安裝類按鍵之間有比較固定的位置關系,比如,繼續(xù)安裝類按鍵通常在后退安裝類按鍵的右側,于是就可以確定右側的按鍵是繼續(xù)安裝類的按鍵?;蛘?,也可以通過試點擊的方式來確定哪個是繼續(xù)安裝類按鍵,比如,保存上一安裝界面,模擬試點擊繼續(xù)安裝類按鍵和后退安裝類按鍵中的某一個,試點擊之后,將新出現(xiàn)的安裝界面與已保存的上一安裝界面對比,如果兩個界面一樣,說明試點擊的按鍵是后退安裝類按鍵,反之,則說明試點擊的按鍵是繼續(xù)安裝類的按鍵。步驟F中獲取繼續(xù)安裝類按鍵的位置信息的具體實現(xiàn)與第一實施方式中的步驟C一樣,不再贅述。需要說明的是,雖然第二種具體實施方式獲得位置信息的方式較第一具體實施方式復雜,但是通用性相對更強,所以各有優(yōu)勢,可以在不同實際情況下單獨使用,也可以將兩者結合使用。比如,可以在通過第一具體實施方式無法找出繼續(xù)安裝類按鍵的情況下,再采用第二種具體實施方式進行查找。(三)獲得繼續(xù)安裝類按鍵的位置信息的第三具體實施例方式在通過某種方式已經獲得某軟件包安裝過程中的一安裝界面的繼續(xù)安裝類按鍵的位置信息,那可以通過下述方式獲得該軟件包后續(xù)安裝界面上繼續(xù)安裝類按鍵的位置信息根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息。一般而言,針對同一軟件包而言,各安裝界面上繼續(xù)安裝類按鍵在界面上的位置都是相對固定的,因此,可以根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中的所處位置,判斷出下一安裝界面中繼續(xù)安裝類按鍵的位置。步驟140:根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。模擬點擊的具體實現(xiàn)方式很多,比如可以采用模擬鼠標點擊的方式,也可以采用模擬鍵盤點擊的方式,還可以采用模擬觸摸點擊的方式。比如,模擬鼠標點擊而言,可以通過發(fā)送消息來實現(xiàn),主要是通過SendMessage和PostMessage來實現(xiàn),如下所示SendMessage(hffnd,WM_COMMAND,MAKELPARAM(BN_CLICK,ID),hButtonffnd)。再比如,還可以首先需要通過SetCursorPos函數(shù)來設置需要單擊的位置坐標,然后通過mouse_event等函數(shù)(包括MOUSEEVENTF_LEFTDOWN、MOUSEEVENTF_LEFTUP、MOUSEEVENTF_MOVE等多種參數(shù))模擬在對應的位置按下、釋放、移動等操作,從而達到模擬點擊的效果。采用模擬鍵盤點擊的具體實現(xiàn)與采用模擬鼠標點擊的方案類似,只是在選中按鍵后將SendMessage和PostMessage中鼠標點擊的參數(shù)替換為鍵盤點擊的參數(shù)(比如替換為回車的參數(shù)),此處不再贅述。模擬觸摸點擊的方式,也是類似的,也可以通過SendMessage和PostMessage來實現(xiàn)。當然,還有很多其他的模擬點擊方式,此處不再贅述,任何可以實現(xiàn)模擬點擊的技術實現(xiàn)方式都可以應用在本發(fā)明實施例中。此外,此處介紹的模擬點擊方式,不限于模擬點擊繼續(xù)安裝類按鍵,還適用于模擬點擊其他按鍵,也適用于本發(fā)明實施例中其他需要模擬點擊的技術點,因為實現(xiàn)原理一樣,故其他涉及模擬點擊的部分不再贅述,請參看此處描述。軟件包的安裝過程一般會涉及多個安裝界面,也就是需要模擬點擊多個繼續(xù)安裝類按鍵,才能最終完成安裝過程,所以可以重復查找繼續(xù)安裝類按鍵以及模擬點擊的步驟,直到安裝完成為止。一般通過界面上的信息可以自動判斷安裝是否完成,比如,如果界面中有控件類型為ctrll且值包含valuel的控件,且有控件類型為ctrl2且值為value2的控件(例如可簡寫成規(guī)則〈rulevalue=//ctrlliivalueliictrl2iivalue2///>),則被認為該軟件成功安裝。其他可以判斷安裝已完成的方式也應該應用到本發(fā)明實施例中,比如采用分析界面中按鍵文本內容的方式,如果分析出有“完成”、“安裝完成”等表述安裝完成類的文字,則也可證明安裝完成,點擊安裝完成類的按鍵結束整個安裝過程。通過以上各步驟就可以完成多數(shù)軟件的自動安裝。不過由于軟件包的差異化,在有些軟件包的安裝過程中,可能除了出現(xiàn)包括繼續(xù)安裝類按鍵的常規(guī)安裝界面之外,還可能會出現(xiàn)其他的安裝界面,比如協(xié)議頁、組件頁,或者提示框等,或者出現(xiàn)解壓縮、環(huán)境準備過程或者語言選擇等非必然出現(xiàn)的各種情況,下面對可能出現(xiàn)的這幾種情況進行詳細說明。本領域技術人員可以理解,如果沒有出現(xiàn)上述這幾種特殊的情況,則不需要相關操作。(I)介紹如何處理軟件包安裝過程中可能出現(xiàn)的協(xié)議頁。在具體實現(xiàn)時,分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。比如,以windows為例,可以調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,控件類型多種多樣,比如Static、各種Button、TRzBitBtn等等。如果出現(xiàn)類型為RadioButton、TNewRadioButton、TRadioButton、TTntRadioButton.UnicodeClass,TCheckBox等控件時,就認為是協(xié)議頁中“同意”或“不同意”對應的控件,進而,就可以識別出當前安裝界面是協(xié)議頁。通常而言,在協(xié)議頁中,如果當前選默認選中的是“不同意”,那么該安裝界面中繼續(xù)安裝類按鍵是不可點擊的。所以,可以先通過前文所述的多種方式查找到當前安裝界面中的繼續(xù)安裝類按鍵,并判斷該按鍵是否可以點擊,如果不可點擊,則獲得“同意”和“不同意”兩個按鍵的位置信息,通過模擬點擊的方式嘗試點擊其中的任一按鍵,如果點擊后發(fā)現(xiàn)該安裝界面中繼續(xù)安裝類按鍵還是不可點擊,那么證明當前嘗試點擊(選中)的是“不同意”,于是再點擊另外一個按鍵,會發(fā)現(xiàn)該界面中繼續(xù)安裝類按鍵點擊了,于是也說明當前選中點擊的按鍵是協(xié)議“同意按鍵”。反之,如果初次嘗試模擬點擊一按鍵后,繼續(xù)安裝類按鍵可以點擊了,那么就證明初次嘗試模擬點擊的是協(xié)議“同意”按鍵。當然,還可以分析當前安裝界面中的文本內容,找到“同意”或“不同意”的文本內容,從而確定哪個按鍵是“同意”對應的控件,進而獲得該按鍵的位置信息,通過模擬點擊“同意”的按鍵控件,以便繼續(xù)安裝類按鍵可以點擊。在繼續(xù)安裝類按鍵可以點擊后,就可以通過步驟140模擬點擊該類按鍵,逐步完成軟件的安裝。(2)介紹如何處理軟件包安裝過程中可能出現(xiàn)的組件頁。分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;模擬點擊所述組件頁中所有組件類型控件的按鍵。與前述識別協(xié)議頁的實現(xiàn)方案類似,調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,如果出現(xiàn)類型為“TNewCheckListBox、CheckLiStBox”等組件類型的控件,則認為當前安裝頁是組件頁。進而,通過模擬點擊的方式將控件中可點擊的組件選中。優(yōu)選的,由于不同組件會釋放不同的文件,因此優(yōu)選,為了在安裝過程使得要收集的文件更全面,可以將所有要可選擇的組件都選中。同理,在選擇好組件后,模擬點擊當前安裝頁面中的繼續(xù)安裝類按鍵即可進入下一個安裝界面。(3)介紹如何處理軟件包安裝過程中可能出現(xiàn)的提示框。具體而言,在軟件安裝過程中可能出現(xiàn)因各種原因出現(xiàn)的各種提示框,比如提示“文件夾已存在”、“是否確實要安裝”等等提示框,雖然提示框的種類繁多,但通常無論是因何種原因出現(xiàn)何種提示框,一般提示框中可點擊的按鍵只有兩類,一類是確認類按鍵,如“確認”、“0K”等;另一類是取消類按鍵,如“取消”、“cancel”等等。因此可以通過下述方式自動處理提示框。如,將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果彈出框的尺寸小于安裝界面的尺寸,則識別該彈出框為提示框??蛇x的,為了防止不同安裝界面尺寸之間存在微小誤差,可以考慮當彈出框的尺寸小于所述安裝界面的程度超過預置范圍時,才將其識別為提示框,否則還認為是安裝界面。比如可以設定如果當前彈出框的尺寸小于安裝界面尺寸的幾分之幾時,就確定當天的彈出框是提示框,至于預置的范圍具體是多少,以及設置為長度、寬度,還是面積,則可以根據(jù)具體實際情況而定,本發(fā)明對此并沒有限制。然后調用用以枚舉提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;在所述按鍵類型的控件中識別出確認類按鍵;通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;模擬點擊所述提示框中的確認類按鍵。與識別安裝界面中的繼續(xù)安裝類按鍵的具體實現(xiàn)類似,識別出確認類按鍵的方式也有多種。比如可以分析所述按鍵類型的控件的文本內容,獲得所述文本內容屬于確認類的按鍵;或者,分析所述按鍵類型的控件的文本內容,獲得所述文本內容屬于取消類的按鍵,從所述提示框的按鍵中過濾取消類按鍵,得到確認類按鍵。其余步驟的具體實現(xiàn)也與前述繼續(xù)安裝類按鍵的相關步驟實現(xiàn)雷同,故不再贅述。(4)介紹如何處理需要解壓縮的軟件包、環(huán)境準備過程、正在安裝過程或者語言選擇等可能出現(xiàn)的情況。有些可安裝的軟件包在下載時是壓縮包,因此需要進行解壓縮。多數(shù)情況下運行軟件包時會自動識別壓縮格式,進而通過對應的解壓工具進行解壓。解壓過程中,在安裝界面上一般會出現(xiàn)進度條的控件,因此可以通過分析當前安裝界面中是否存在進度條類型的控件,來判斷當前是否處于解壓狀態(tài)??蛇x的,為了處理個別情況下因無法正確解壓而造成不能正常安裝,可以設置一超時機制,當超過預設時間解壓進度條仍然沒有消失,則停止安裝,即模擬點擊當然安裝界面上的停止安裝類按鍵。在安裝過程中可能會出現(xiàn)包括語言選擇的安裝界面,通過分析安裝界面上的文字信息可以識別出語言選擇界面,比如界面上有“語言”或“l(fā)anguage”等內容,則確認當前安裝界面是語言選擇界面,通常情況下,選擇按照默認選項即可,然后模擬點擊該安裝界面上的繼續(xù)安裝類按鍵。此外,在安裝過程中還可能出現(xiàn)處于環(huán)境準備過程的階段,這個階段對安裝基本沒有影響,在該階段,安裝界面中的繼續(xù)安裝類按鍵一般是灰的,即無法點擊狀態(tài),只有環(huán)境準備過程結束后,繼續(xù)安裝類按鍵才可以點擊,進而通過模擬點擊繼續(xù)安裝類按鍵即可進入下一安裝界面。此外,在軟件安裝過程中還可能會出現(xiàn)處于正在安裝的過程階段,在這個階段可以通過安裝界面上的安裝進度條控件,判斷當前安裝處于正在安裝的階段,在該階段一般不需要模擬點擊任何按鍵,只需等待正在安裝過程結束后自動彈出下一安裝界面,通常是安裝完成的界面。通過前面的各個步驟,已經完成的軟件包的安裝,那么后續(xù)就可以對在安裝過程中釋放的文件進行收集。步驟150:監(jiān)控所述軟件包安裝過程中釋放的文件。具體而言,可以通過調用鉤子函數(shù)捕獲到文件操作流,獲得在軟件包安裝過程中釋放的文件的文件路徑。在Windows操作系統(tǒng)中,Windows操作系統(tǒng)工作于CPU的保護模式下,操作系統(tǒng)內核及設備驅動程序工作于O環(huán)(ringO),稱為核心態(tài);應用程序、動態(tài)鏈接庫工作于3環(huán),稱為用戶態(tài)。Windows提供的對文件操作的API都工作于用戶態(tài),只能供應用程序程序使用。要實現(xiàn)對文件操作過濾(也可稱監(jiān)控),就需要在文件系統(tǒng)驅動程序實現(xiàn)。當應用程序(比如在安裝軟件包的過程中)對文件進行操作時,將操作請求下傳到處于內核態(tài)的I/O管理器,I/O管理器根據(jù)來自用戶態(tài)的請求,建立相應的IRP包(I/Orequestpacket),并將IRP發(fā)送到文件系統(tǒng)驅動程序處理。文件系統(tǒng)驅動程序本身是一個分層的驅動模型,上層是文件系統(tǒng)過濾驅動程序,中間是NTFS(NewTechnologyFileSystem,新技術檔案系統(tǒng))、FAT(FileAllocationTable,檔案配置表)等文件系統(tǒng)驅動程序,底層是存儲設備驅動程序。對軟件包安裝過程中釋放的文件的監(jiān)控,就是在文件系統(tǒng)驅動程序分層中的上層掛鉤子,過濾IRP包,獲得關心的文件操作,比如獲得安裝過程中釋放的文件的文件路徑。具體而言,可以通過fnlnstall函數(shù)安裝鉤子,通過fnStartHookEx啟動鉤子,添加回調函數(shù),然后通過fnAddRule添加過濾規(guī)則,獲得在軟件包安裝過程中釋放的各種文件的文件路徑等信息。步驟160:收集在所述軟件包的安裝過程中釋放的所需的文件。根據(jù)步驟150監(jiān)控獲得的文件的文件路徑,收集在軟件包的安裝過程中釋放的所需的文件。具體而言,從釋放的文件中識別出屬于所需類型(如PE類和/或腳本類)的文件,然后根據(jù)這些文件的文件路徑,拷貝這些文件,收集的文件包括但不限于新增的文件,還可以包括修改或刪除的文件(比如安裝升級包過程中可能會涉及),而且可以根據(jù)文件路徑,在對原有文件進行修改或刪除之前進行拷貝,從而保存更全面的文件。此外,為了更全面的收集文件,可以通過調用系統(tǒng)API函數(shù)獲得收集的文件的文件屬性信息,比如包括文件的大小、創(chuàng)建時間、修改時間、文件簽名等中的任意一種或多種。在具體實現(xiàn)時,例如可以通過GetFiIeSize獲得文件的大小,通過FindFirstFile獲得文件創(chuàng)建、修改時間,通過CertGetNameString獲取簽名串,通過WinVerifyTrust獲得驗證簽名串有效性等等。收集到上述文件和文件屬性信息后,可以保存在本地或者傳輸給服務器保存。以上公開了本發(fā)明一種用于實現(xiàn)文件收集的方法實施例,與所述方法實施例相對應,本發(fā)明還公開了一種用于實現(xiàn)文件收集的裝置實施例,請參看圖2,其為本發(fā)明一種用于實現(xiàn)文件收集的裝置第一實施例示意圖。由于裝置實施例基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。所述裝置實施例包括軟件包獲得單元201,用于獲得可安裝的軟件包;運行單元202,用于運行所述可安裝的軟件包;第一位置分析單元203,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;模擬點擊單元204,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控單元205,用于監(jiān)控所述軟件包安裝過程中釋放的文件;收集單元206,用于收集在所述軟件包的安裝過程中釋放的所需的文件。第一位置分析單元203有多種具體實施方式,下面示意性的給出兩種,這兩種具體實施方式可以單獨使用,也可以結合使用??蛇x的,第一位置分析單元203包括第一查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第一分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;第一位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述第一位置分析單元203包括第二查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第三查找單元,用于調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;第二分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;過濾單元,用于通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;第四查找單元,用于根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;第二位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述裝置還可以包括第二位置分析單元,用于根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息??蛇x的,所述裝置還可以包括協(xié)議頁識別單元,用于分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;第三位置分析單元,用于如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;第二模擬點擊單元,用于模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。可選的,所述裝置還可以包括組件識別單元,用于分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;第三模擬點擊單元,用于模擬點擊所述組件頁中所有組件類型控件的按鍵??蛇x的,所述裝置還可以包括提示框識別單元,用于將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸,或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;第五查找單元,用于枚舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;確認識別單元,用于在所述按鍵類型的控件中識別出確認類按鍵;第四位置分析單元,用于通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;第四模擬點擊單元,用于模擬點擊所述提示框中的確認類按鍵。以上各單元中提及的模擬點擊都有多種具體實現(xiàn)方式,比如可以是模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意一種??蛇x的,監(jiān)控單元205,具體用于通過調用鉤子函數(shù)捕獲到文件操作流,獲得在所述軟件包安裝過程中釋放的文件的文件路徑;收集單元206,具體用于根據(jù)所述監(jiān)控單元提供的文件路徑,收集在所述軟件包的安裝過程中釋放的所需的文件??蛇x的,收集單元206具體包括識別子單元,用于從所述軟件包安裝過程中釋放的文件中識別出屬于PE類的文件和/或腳本類的文件;拷貝子單元,用于拷貝所述PE類文件和/或腳本類文件;屬性獲得子單元,用于通過調用系統(tǒng)API函數(shù)獲得所述PE類文件和/或腳本類文件的文件屬性信息。其中,屬性獲得子單元,具體用于獲得所述PE類文件和/或腳本類文件的大小、創(chuàng)建時間、修改時間、文件簽名中的任意一種或多種。通過上述一種用于實現(xiàn)文件收集的方法和裝置實施例可以看出,本發(fā)明實施例通過自動安裝軟件包的方式來收集安裝過程中釋放出的文件,使得收集到的文件更全面。而且,由于在進行安裝過程中,是通過分析安裝界面的內容,能夠自動識別出需要點擊的按鍵(比如繼續(xù)安裝類的按鍵),并且在識別之后通過模擬點擊對應的按鍵,實現(xiàn)軟件包的完全自動安裝。因此,安裝軟件包的效率很高,而且對軟件包的類型沒有限制,適用性更廣,所以使得文件收集的效率和全面性都得到了顯著提高。請參閱圖3,其為本發(fā)明公開的一種用于實現(xiàn)文件自動安裝的方法實施例流程圖。本實施例中自動安裝的具體是先鋒方案也可以應用于前述用于實現(xiàn)文件收集的方法中,而且在前文已經對自動安裝的各步驟進行了詳細介紹,兩個實施例對應步驟的具體實現(xiàn)可以相互借鑒。步驟310:獲得可安裝的軟件包。在具體實現(xiàn)本步驟的過程中,有多種具體實施方式。比如,可以由服務器收集或人工收集當前網絡上提供的下載可安裝的軟件包的鏈接,然后由服務器自動下載或者人工手動下載可安裝的軟件包。再比如,監(jiān)控到某臺計算機上有需要更新的軟件,那么可以去下載該軟件的升級包??砂惭b的軟件包可以是升級的軟件包,也可以是全新的一款可安裝的軟件包。本發(fā)明實施例對如何獲得可安裝的軟件包并沒有限制,只要能夠獲取到可安裝的軟件包,即可應用本發(fā)明實施例的技術方案。步驟320:運行所述可安裝的軟件包。在具體實現(xiàn)時,可以通過點擊來運行可安裝的軟件包。也可以通過調用系統(tǒng)API函數(shù)creatprocess,自動運行可安裝的軟件包,以便達到自動運行的效果。步驟330:當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息。在運行可安裝的軟件包之后,會出現(xiàn)各種安裝界面。進而,就需要對安裝界面進行分析,通過分析安裝界面的內容,獲得安裝界面中繼續(xù)安裝類按鍵的位置信息。本發(fā)明實施例中所述的繼續(xù)安裝類按鍵,包括但不限于“繼續(xù)安裝”、“繼續(xù)”、“下一步”、“next”、“一”等,只要表示要將安裝操作繼續(xù)的按鍵都屬于本發(fā)明實施例中的繼續(xù)安裝類按鍵。獲得繼續(xù)安裝類按鍵的位置信息的具體實現(xiàn)方式有多種,下面僅給出幾種具體實現(xiàn)方式的示例。(二)獲得繼續(xù)安裝類按鍵的位置信息的第一具體實現(xiàn)方式A:調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;B:分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;C:通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。具體而言,對于不同的操作系統(tǒng),調用的API函數(shù)不盡相同,以windows為例,可以調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,控件類型多種多樣,比如Static、各種Button、TRzBitBtn等等。其中,如果控件類型為“Button、TButton、TNewButton、TTntButton.UnicodeClass、obj_BUTT0N、TRzBitBtn”等類型,則表明該控件是按鍵類型。在找出按鍵類型的控件后,就可以分析這些控件的文本內容,比如分析出其中哪些按鍵上的文本內容屬于繼續(xù)安裝類的文本,比如文本內容是“繼續(xù)安裝”、“繼續(xù)”、“下一步”等等,于是就找到本文內容屬于繼續(xù)安裝類的按鍵。最后,通過調用可以獲得控件位置信息的API函數(shù)獲得繼續(xù)安裝類按鍵的位置信息,如用API函數(shù)FindWindow和FindffindowEx找到控件句柄后,再用GetWindowRect獲取到控件的位置等所需信息。(二)獲得繼續(xù)安裝類按鍵的位置信息的第二具體實施例方式A:調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;B:調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;C:分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;D:通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;E:根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;F:通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。具體言之,第二具體實施方式中的步驟A和第一具體實施方式中的步驟A—樣,所以不再贅述。在本實施方式中的步驟B,在Windows下,可以通過IsWindowEnabled這個WindowsAPI判斷按鍵控件是否可用,即是否可點擊,從而找出不可點擊的按鍵。本實施方式中的步驟C與前文第一實施方式中的步驟C使用的技術原理一樣,只不過查找的不是繼續(xù)安裝類的按鍵,而是查找停止安裝類的按鍵,比如按鍵的文本內容是“取消”、“cancel”、“停止安裝”等代表不再繼續(xù)安裝、停止安裝的意思。之所以本步驟如此操作,是因為通常繼續(xù)安裝類按鍵的文本表示內容多種多樣,可能無法窮盡,而停止安裝類按鍵的文本表示內容相對比較固定、種類較少,因此,可以通過排除法,先找出停止類按鍵,然后再一步步排除。找出不可點擊的按鍵和停止類按鍵之后,剩余的基本就是繼續(xù)安裝類的按鍵和后退安裝類按鍵。通常后退安裝類按鍵和繼續(xù)安裝類按鍵之間有比較固定的位置關系,比如,繼續(xù)安裝類按鍵通常在后退安裝類按鍵的右側,于是就可以確定右側的按鍵是繼續(xù)安裝類的按鍵?;蛘撸部梢酝ㄟ^試點擊的方式來確定哪個是繼續(xù)安裝類按鍵,比如,保存上一安裝界面,模擬試點擊繼續(xù)安裝類按鍵和后退安裝類按鍵中的某一個,試點擊之后,將新出現(xiàn)的安裝界面與已保存的上一安裝界面對比,如果兩個界面一樣,說明試點擊的按鍵是后退安裝類按鍵,反之,則說明試點擊的按鍵是繼續(xù)安裝類的按鍵。步驟F中獲取繼續(xù)安裝類按鍵的位置信息的具體實現(xiàn)與第一實施方式中的步驟C一樣,不再贅述。需要說明的是,雖然第二種具體實施方式獲得位置信息的方式較第一具體實施方式復雜,但是通用性相對更強,所以各有優(yōu)勢,可以在不同實際情況下單獨使用,也可以將兩者結合使用。比如,可以在通過第一具體實施方式無法找出繼續(xù)安裝類按鍵的情況下,再采用第二種具體實施方式進行查找。(三)獲得繼續(xù)安裝類按鍵的位置信息的第三具體實施例方式在通過某種方式已經獲得某軟件包安裝過程中的一安裝界面的繼續(xù)安裝類按鍵的位置信息,那可以通過下述方式獲得該軟件包后續(xù)安裝界面上繼續(xù)安裝類按鍵的位置信息根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息。一般而言,針對同一軟件包而言,各安裝界面上繼續(xù)安裝類按鍵在界面上的位置都是相對固定的,因此,可以根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中的所處位置,判斷出下一安裝界面中繼續(xù)安裝類按鍵的位置。步驟340:根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。模擬點擊的具體實現(xiàn)方式很多,比如可以采用模擬鼠標點擊的方式,也可以采用模擬鍵盤點擊的方式,還可以采用模擬觸摸點擊的方式。比如,模擬鼠標點擊而言,可以通過發(fā)送消息來實現(xiàn),主要是通過SendMessage和PostMessage來實現(xiàn),如下所示SendMessage(hffnd,WM_C0MMAND,MAKELPARAM(BN_CLICK,ID),hButtonffnd)。再比如,還可以首先需要通過SetCursorPos函數(shù)來設置需要單擊的位置坐標,然后通過mouse_event等函數(shù)(包括M0USEEVENTF_LEFTD0WN、MOUSEEVENTF_LEFTUP、M0USEEVENTF_M0VE等多種參數(shù))模擬在對應的位置按下、釋放、移動等操作,從而達到模擬點擊的效果。采用模擬鍵盤點擊的具體實現(xiàn)與采用模擬鼠標點擊的方案類似,只是在選中按鍵后將SendMessage和PostMessage中鼠標點擊的參數(shù)替換為鍵盤點擊的相關參數(shù)(比如替換為回車的參數(shù)),此處不再贅述。模擬觸摸點擊的方式,也是類似的,也可以通過SendMessage和PostMessage來實現(xiàn)。當然,還有很多其他的模擬點擊方式,此處不再贅述,任何可以實現(xiàn)模擬點擊的技術實現(xiàn)方式都可以應用在本發(fā)明實施例中。此外,此處介紹的模擬點擊方式,不限于模擬點擊繼續(xù)安裝類按鍵,還適用于模擬點擊其他按鍵,也適用于本發(fā)明實施例中其他需要模擬點擊的技術點,因為實現(xiàn)原理一樣,故其他涉及模擬點擊的部分不再贅述,請參看此處描述。軟件包的安裝過程一般會涉及多個安裝界面,也就是需要模擬點擊多個繼續(xù)安裝類按鍵,才能最終完成安裝過程,所以可以重復查找繼續(xù)安裝類按鍵以及模擬點擊的步驟,直到安裝完成為止。一般通過界面上的信息可以自動判斷安裝是否完成,比如,如果界面中有控件類型為ctrll且值包含valuel的控件,且有控件類型為ctrl2且值為value2的控件(例如可簡寫成規(guī)則〈rulevalue=〃ctrIIOOvalueIOOctr12觀value2〃/>),則被認為該軟件成功安裝。其他可以判斷安裝已完成的方式也應該應用到本發(fā)明實施例中,比如采用分析界面中按鍵文本內容的方式,如果分析出有“完成”、“安裝完成”等表述安裝完成類的文字,則也可證明安裝完成,點擊安裝完成類的按鍵結束整個安裝過程。通過以上各步驟就可以完成多數(shù)軟件的自動安裝。不過由于軟件包的差異化,在有些軟件包的安裝過程中,可能除了出現(xiàn)包括繼續(xù)安裝類按鍵的常規(guī)安裝界面之外,還可能會出現(xiàn)其他的安裝界面,比如協(xié)議頁、組件頁,或者提示框等,或者出現(xiàn)解壓縮、環(huán)境準備過程、正在安裝過程或者語言選擇等非必然出現(xiàn)的各種情況,下面對可能出現(xiàn)的這幾種情況進行詳細說明。本領域技術人員可以理解,如果沒有出現(xiàn)上述這幾種特殊的情況,則不需要相關操作。(I)介紹如何處理軟件包安裝過程中可能出現(xiàn)的協(xié)議頁。在具體實現(xiàn)時,分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。如,以windows為例,可以調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,控件類型多種多樣,比如Static、各種Button、TRzBitBtn等等。如果出現(xiàn)類型為RadioButton、TNewRadioButton、TRadioButton、TTntRadioButton.UnicodeClass,TCheckBox等控件時,就認為是協(xié)議頁中“同意”或“不同意”對應的控件,進而,就可以識別出當前安裝界面是協(xié)議頁。通常而言,在協(xié)議頁中,如果當前選默認選中的是“不同意”,那么該安裝界面中繼續(xù)安裝類按鍵是不可點擊的。所以,可以先通過前文所述的多種方式查找到當前安裝界面中的繼續(xù)安裝類按鍵,并判斷該按鍵是否可以點擊,如果不可點擊,則獲得“同意”和“不同意”兩個按鍵的位置信息,通過模擬點擊的方式嘗試點擊其中的任一按鍵,如果點擊后發(fā)現(xiàn)該安裝界面中繼續(xù)安裝類按鍵還是不可點擊,那么證明當前嘗試點擊(選中)的是“不同意”,于是再點擊另外一個按鍵,會發(fā)現(xiàn)該界面中繼續(xù)安裝類按鍵點擊了,于是也說明當前選中點擊的按鍵是協(xié)議“同意按鍵”。反之,如果初次嘗試模擬點擊一按鍵后,繼續(xù)安裝類按鍵可以點擊了,那么就證明初次嘗試模擬點擊的是協(xié)議“同意”按鍵。當然,還可以分析當前安裝界面中的文本內容,找到“同意”或“不同意”的文本內容,從而確定哪個按鍵是“同意”對應的控件,進而獲得該按鍵的位置信息,通過模擬點擊“同意”的按鍵控件,以便繼續(xù)安裝類按鍵可以點擊。在繼續(xù)安裝類按鍵可以點擊后,就可以通過步驟140模擬點擊該類按鍵,逐步完成軟件的安裝。(2)介紹如何處理軟件包安裝過程中可能出現(xiàn)的組件頁。分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;模擬點擊所述組件頁中所有組件類型控件的按鍵。與前述識別協(xié)議頁的實現(xiàn)方案類似,調用EnumChildWindows這個WindowsAPI枚舉安裝界面上的控件類型和控件值,如果出現(xiàn)類型為“TNewCheckListBox、CheckListBox”等組件類型的控件,則認為當前安裝頁是組件頁。進而,通過模擬點擊的方式將控件中可點擊的組件選中。優(yōu)選的,由于不同組件會釋放不同的文件,因此優(yōu)選,為了在安裝過程使得要收集的文件更全面,可以將所有要可選擇的組件都選中。同理,在選擇好組件后,模擬點擊當前安裝頁面中的繼續(xù)安裝類按鍵即可進入下一個安裝界面。(3)介紹如何處理軟件包安裝過程中可能出現(xiàn)的提示框。具體而言,在軟件安裝過程中可能出現(xiàn)因各種原因出現(xiàn)的各種提示框,比如提示“文件夾已存在”、“是否確實要安裝”等等提示框,雖然提示框的種類繁多,但通常無論是因何種原因出現(xiàn)何種提示框,一般提示框中可點擊的按鍵只有兩類,一類是確認類按鍵,如“確認”、“0K”等;另一類是取消類按鍵,如“取消”、“cancel”等等。因此可以通過下述方式自動處理提示框。比如,將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果彈出框的尺寸小于安裝界面的尺寸,則識別該彈出框為提示框??蛇x的,為了防止不同安裝界面尺寸之間存在微小誤差,可以考慮當彈出框的尺寸小于所述安裝界面的程度超過預置范圍時,才將其識別為提示框,否則還認為是安裝界面。比如可以設定如果當前彈出框的尺寸小于安裝界面尺寸的幾分之幾時,就確定當天的彈出框是提示框,至于預置的范圍具體是多少,以及設置為長度、寬度,還是面積,則可以根據(jù)具體實際情況而定,本發(fā)明對此并沒有限制。然后調用用以枚舉提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;在所述按鍵類型的控件中識別出確認類按鍵;通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;模擬點擊所述提示框中的確認類按鍵。與識別安裝界面中的繼續(xù)安裝類按鍵的具體實現(xiàn)類似,識別出確認類按鍵的方式也有多種。比如可以分析所述按鍵類型的控件的文本內容,獲得所述文本內容屬于確認類的按鍵;或者,分析所述按鍵類型的控件的文本內容,獲得所述文本內容屬于取消類的按鍵,從所述提示框的按鍵中過濾取消類按鍵,得到確認類按鍵。其余步驟的具體實現(xiàn)也與前述繼續(xù)安裝類按鍵的相關步驟實現(xiàn)雷同,故不再贅述。(4)介紹如何處理需要解壓縮的軟件包、環(huán)境準備過程或者語言選擇等可能出現(xiàn)的情況。有些可安裝的軟件包在下載時是壓縮包,因此需要進行解壓縮。多數(shù)情況下運行軟件包時會自動識別壓縮格式,進而通過對應的解壓工具進行解壓。解壓過程中,在安裝界面上一般會出現(xiàn)進度條的控件,因此可以通過分析當前安裝界面中是否存在進度條類型的控件,來判斷當前是否處于解壓狀態(tài)??蛇x的,為了處理個別情況下因無法正確解壓而造成不能正常安裝,可以設置一超時機制,當超過預設時間解壓進度條仍然沒有消失,則停止安裝,即模擬點擊當然安裝界面上的停止安裝類按鍵。在安裝過程中可能會出現(xiàn)包括語言選擇的安裝界面,通過分析安裝界面上的文字信息可以識別出語言選擇界面,比如界面上有“語言”或“l(fā)anguage”等內容,則確認當前安裝界面是語言選擇界面,通常情況下,選擇按照默認選項即可,然后模擬點擊該安裝界面上的繼續(xù)安裝類按鍵。此外,在安裝過程中還可能出現(xiàn)處于環(huán)境準備過程的階段,這個階段對安裝基本沒有影響,在該階段,安裝界面中的繼續(xù)安裝類按鍵一般是灰的,即無法點擊狀態(tài),只有環(huán)境準備過程結束后,繼續(xù)安裝類按鍵才可以點擊,進而通過模擬點擊繼續(xù)安裝類按鍵即可進入下一安裝界面。此外,在軟件安裝過程中還可能會出現(xiàn)處于正在安裝的過程階段,在這個階段可以通過安裝界面上的安裝進度條控件,判斷當前安裝處于正在安裝的階段,在該階段一般不需要模擬點擊任何按鍵,只需等待正在安裝過程結束后自動彈出下一安裝界面,通常是安裝完成的界面。以上詳細介紹了本發(fā)明公開的一種用于實現(xiàn)文件自動安裝的方法實施例,下面再結合一款視頻下載器的自動安裝的具體實施方式為例,進一步詳細介紹。請參閱圖4,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第一界面示意圖。該示意圖是在某款視頻軟件包運行啟動后出現(xiàn)的安裝界面。在這個軟件包的安裝過程中,沒有出現(xiàn)“語言選擇”、“解壓”等過程,直接進入帶有“下一步”,(繼續(xù)安裝類按鍵的一種)的安裝界面。在該安裝界面中識別“下一步”按鍵。由于在這個界面中,只有兩個按鍵“下一步(N)〉”和“取消”按鍵,因此過濾掉“取消”按鍵,就剩下“下一步(N)〉”按鍵。進而模擬點擊該安裝界面中的“下一步(N)>”按鍵進入下一個界面。請繼續(xù)參閱圖5,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第二界面示意圖。該安裝界面是一協(xié)議頁??梢钥闯觯谠摪惭b界面上,根據(jù)上一安裝界面中“下一步(N)〉”按鍵位置找到當前安裝界面中“下一步(N)〉”按鍵,但是這個“下一步(N)〉”按鍵是不可點擊的。進而,在當前安裝界面上通過控件類型找到“我接受協(xié)議”控件和“我不接受協(xié)議”控件。順序模擬點擊“我接受協(xié)議”控件和“我不接受協(xié)議”控件,當模擬點擊“我接受協(xié)議”控件時,出現(xiàn)下一安裝界面。請繼續(xù)參閱圖6,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第三界面示意圖。從該示意圖可以看出,由于已經模擬點擊選中了“我接受協(xié)議”控件,因此“下一步(N)〉”變成可點擊狀態(tài)。進而,模擬點擊“下一步(N)〉”按鍵,接入下一個安裝界面。請繼續(xù)參閱圖7,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第四界面示意圖。同理,在該安裝界面中,根據(jù)上一安裝界面中“下一步(N)〉”按鍵位置找到該安裝界面中“下一步(N)〉”按鍵,并模擬點擊“下一步(N)〉”按鍵。進入下一個安裝界面。請繼續(xù)參閱圖8,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第五界面示意圖。同理,在該安裝界面中,根據(jù)上一安裝界面中“下一步(N)〉”按鍵位置找到該安裝界面中“下一步(N)〉”按鍵,并模擬點擊“下一步(N)〉”按鍵。進入下一個安裝界面。請繼續(xù)參閱圖9,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第六界面示意圖。同理,在該安裝界面中,根據(jù)上一安裝界面中“下一步(N)〉”按鍵位置找到該安裝界面中“下一步(N)〉”按鍵,并模擬點擊“下一步(N)〉”按鍵。進入下一個安裝界面。請繼續(xù)參閱圖10,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第七界面示意圖。同理,在該安裝界面中,根據(jù)上一安裝界面中“下一步(N)〉”按鍵位置找到當前安裝界面中“安裝(I)”按鍵,因為下一步(N)〉和“安裝(I)”都屬于繼續(xù)安裝類按鍵,所以同樣可以通過上一安裝界面中“下一步(N)〉”按鍵位置找到當前安裝界面中“安裝(I)”按鍵的位置。進而,模擬點擊“下一步(N)〉”按鍵。進入下一個安裝界面。請繼續(xù)參閱圖11,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第八界面示意圖。在當前安裝界面中,根據(jù)界面中的進度條控件,可以判斷是“正在安裝”過程,在該步驟不需要做任何操作,等待“正在安裝”過程結束。安裝結束后,會自動進入下一安裝界面。請繼續(xù)參閱圖12,其為本發(fā)明視頻下載器自動安裝具體實施方式中的第九界面示意圖。在本步驟就是要判斷軟件包是否正常安裝完成。通過規(guī)則“STATIC觀安裝向導已完成*的安裝@@BUTT0N@@完成(F)”來判斷該軟件包是否安裝完成。該規(guī)則含義是,如果界面上出現(xiàn)控件包含“安裝向導已完成*的安裝”的STATIC和包含“完成(F)”的BUTTON,其中是通配符,則說明安裝已完成,當前安裝界面是安裝已完成的界面。到此為止,軟件包的自動安裝完成,程序返回的結果也是“完成安裝”。與前述一種用于實現(xiàn)軟件包自動安裝的方法實施例相對應,本發(fā)明還公開了一種用于實現(xiàn)軟件包自動安裝的裝置實施例,請參看圖13,其為本發(fā)明一種用于實現(xiàn)軟件包自動安裝的裝置實施例示意圖。由于裝置實施例基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。下述描述的裝置實施例僅僅是示意性的。所述裝置實施例包括軟件包獲得單元131,用于獲得可安裝的軟件包;運行單元132,用于運行所述可安裝的軟件包;第一位置分析單元133,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;第一模擬點擊單元134,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。可選的,第一位置分析單元133有多種具體實施方式,下面示意性的給出兩種,這兩種具體實施方式可以單獨使用,也可以結合使用。可選的,第一位置分析單元133包括第一查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第一分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;第一位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述第一位置分析單元133包括第二查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第三查找單元,用于調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;第二分析單元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;過濾單元,用于通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;第四查找單元,用于根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;第二位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息??蛇x的,所述裝置還可以包括第二位置分析單元,用于根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息??蛇x的,所述裝置還可以包括協(xié)議頁識別單元,用于分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;第三位置分析單元,用于如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;第二模擬點擊單元,用于模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。可選的,所述裝置實施例還可以包括組件識別單元,用于分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;第三模擬點擊單元,用于模擬點擊所述組件頁中所有組件類型控件的按鍵??蛇x的,所述裝置實施例還可以包括提示框識別單元,用于將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸,或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;第五查找單元,用于枚舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;確認識別單元,用于在所述按鍵類型的控件中識別出確認類按鍵;第四位置分析單元,用于通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;第四模擬點擊單元,用于模擬點擊所述提示框中的確認類按鍵。以上各單元中提及的模擬點擊都有多種具體實現(xiàn)方式,比如可以是模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意一種。本發(fā)明實施例不需要事先對待安裝的軟件包類型進行識別分析、安裝錄制,而是通過在安裝過程中對安裝界面進行具體分析找出需要模擬點擊的按鍵,從使得本發(fā)明實施例的軟件包自動安裝方案,可以適用于各種類型軟件包的安裝,因此應用范圍更廣,自動安裝的效率更高。通過以上的實施方式的描述可知,本領域的技術人員可以清楚地了解到本發(fā)明可借助軟件加必需的通用硬件平臺的方式來實現(xiàn)。基于這樣的理解,本發(fā)明的技術方案本質上或者說對現(xiàn)有技術做出貢獻的部分可以以軟件產品的形式體現(xiàn)出來,該計算機軟件產品可以存儲在存儲介質中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)執(zhí)行本發(fā)明各個實施例或者實施例的某些部分所述的方法。本說明書中的各個實施例均采用遞進的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于裝置或系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述得比較簡單,相關之處參見方法實施例的部分說明即可。以上所描述的裝置及系統(tǒng)實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本實施例方案的目的。本領域普通技術人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。以上對本發(fā)明所提供的一種用于實現(xiàn)文件收集、軟件包自動安裝的方法及裝置,進行了詳細介紹,本文中應用了具體個例對本發(fā)明的原理及實施方式進行了闡述,以上實施例的說明只是用于幫助理解本發(fā)明的方法及其核心思想;同時,對于本領域的一般技術人員,依據(jù)本發(fā)明的思想,在具體實施方式及應用范圍上均會有改變之處。綜上所述,本說明書內容不應理解為對本發(fā)明的限制。權利要求1.一種用于實現(xiàn)文件收集的方法,其特征在于,包括獲得可安裝的軟件包;運行所述可安裝的軟件包;當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控所述軟件包安裝過程中釋放的文件;收集在所述軟件包的安裝過程中釋放的所需的文件。2.根據(jù)權利要求I所述的方法,其特征在于,所述獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息包括調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。3.根據(jù)權利要求I所述的方法,其特征在于,所述獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息包括調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。4.根據(jù)權利要求I至3中任一項所述的方法,其特征在干,所述監(jiān)控所述軟件包安裝過程中釋放出的文件包括通過調用鉤子函數(shù)捕獲到文件操作流,獲得在所述軟件包安裝過程中釋放的文件的文件路徑;所述收集在軟件包的安裝過程中釋放的所需的文件包括根據(jù)所述文件的文件路徑,收集在所述軟件包的安裝過程中釋放的所需的文件。5.根據(jù)權利要求I至3中任一項所述的方法,其特征在于,所述收集所需的文件包括從所述軟件包安裝過程中釋放的文件中識別出屬于可移植的執(zhí)行體PE類文件和/或腳本類文件;拷貝所述PE類文件和/或腳本類文件;通過調用系統(tǒng)API函數(shù)獲得所述PE類文件和/或腳本類文件的文件屬性信息。6.根據(jù)權利要求5所述的方法,其特征在于,所述獲得PE類文件和/或腳本類文件的文件屬性信息包括獲得所述PE類文件和/或腳本類文件的大小、創(chuàng)建時間、修改時間、文件簽名中的任意ー種或多種。7.根據(jù)權利要求I至3中任一項所述的方法,其特征在于,所述模擬點擊包括模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意ー種。8.一種用于實現(xiàn)文件收集的裝置,其特征在于,包括軟件包獲得單元,用于獲得可安裝的軟件包;運行單元,用于運行所述可安裝的軟件包;位置分析単元,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;模擬點擊單元,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控單元,用于監(jiān)控所述軟件包安裝過程中釋放的文件;收集單元,用于收集在所述軟件包的安裝過程中釋放的所需的文件。9.根據(jù)權利要求8所述的裝置,其特征在于,所述位置分析単元包括第一查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第一分析単元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于繼續(xù)安裝類的按鍵;第一位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。10.根據(jù)權利要求8所述的裝置,其特征在于,所述位置分析単元包括第二查找單元,用于調用用以枚舉界面上控件類型的系統(tǒng)API函數(shù),查找當前安裝界面上按鍵類型的控件;第三查找單元,用于調用用以查找按鍵不可用的系統(tǒng)API函數(shù),找出所述控件中不可點擊的按鍵類型的控件;第二分析単元,用于分析所述按鍵類型的控件的文本內容,找出所述文本內容屬于停止安裝類的按鍵;過濾單元,用于通過在所有的按鍵中過濾掉不可點擊的按鍵和所述停止安裝類的按鍵,找出繼續(xù)安裝類的按鍵和后退安裝類的按鍵;第四查找單元,用于根據(jù)所述繼續(xù)安裝類的按鍵和后退安裝類的按鍵之間的位置關系,或者通過模擬試點擊的方式,找出繼續(xù)安裝類的按鍵;第二位置獲得單元,用于通過調用用以獲取位置信息的系統(tǒng)API函數(shù),獲得所述繼續(xù)安裝類按鍵的位置信息。11.根據(jù)權利要求8至10中任一項所述的裝置,其特征在干,所述監(jiān)控単元,具體用于通過調用鉤子函數(shù)捕獲到文件操作流,獲得在所述軟件包安裝過程中釋放的文件的文件路徑;所述收集単元,具體用于根據(jù)所述監(jiān)控単元提供的文件路徑,收集在所述軟件包的安裝過程中釋放的所需的文件。12.根據(jù)權利要求8至10中任一項所述的裝置,其特征在于,所述收集単元具體包括識別子單元,用于從所述軟件包安裝過程中釋放的文件中識別出屬于PE類的文件和/或腳本類的文件;拷貝子單元,用于拷貝所述PE類文件和/或腳本類文件;屬性獲得子單元,用于通過調用系統(tǒng)API函數(shù)獲得所述PE類文件和/或腳本類文件的文件屬性信息。13.根據(jù)權利要求12所述的裝置,其特征在于所述屬性獲得子單元,具體用于獲得所述PE類文件和/或腳本類文件的大小、創(chuàng)建時間、修改時間、文件簽名中的任意一種或多種。14.一種用于實現(xiàn)軟件包自動安裝的方法,其特征在于,包括獲得可安裝的軟件包;運行所述可安裝的軟件包;當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。15.根據(jù)權利要求14所述的方法,其特征在于,還包括根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息。16.根據(jù)權利要求14所述的方法,其特征在于,還包括分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。17.根據(jù)權利要求14所述的方法,其特征在于,還包括分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;模擬點擊所述組件頁中所有組件類型控件的按鍵。18.根據(jù)權利要求14所述的方法,其特征在于,還包括將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;在所述按鍵類型的控件中識別出確認類按鍵;通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;模擬點擊所述提示框中的確認類按鍵。19.一種用于實現(xiàn)軟件包自動安裝的裝置,其特征在于,包括軟件包獲得單元,用于獲得可安裝的軟件包;運行單元,用于運行所述可安裝的軟件包;第一位置分析單元,用于當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;第一模擬點擊單元,用于根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止。20.根據(jù)權利要求19所述的裝置,其特征在于,還包括第二位置分析單元,用于根據(jù)繼續(xù)安裝類按鍵在上一安裝界面中所處的位置信息,在當前安裝界面中的雷同位置識別出所述當前安裝界面中繼續(xù)安裝類按鍵的位置信息。21.根據(jù)權利要求19所述的裝置,其特征在于,還包括協(xié)議頁識別單元,用于分析當前安裝界面中是否包含協(xié)議類型的控件,識別出當前安裝界面為協(xié)議頁;第三位置分析單元,用于如果當前協(xié)議頁中的繼續(xù)安裝類按鍵不可點擊,則獲取協(xié)議同意類型控件的按鍵位置信息;第二模擬點擊單元,用于模擬點擊所述協(xié)議同意類型控件的按鍵,直到所述繼續(xù)安裝類按鍵可以點擊為止。22.根據(jù)權利要求19所述的裝置,其特征在于,還包括組件識別單元,用于分析當前安裝界面中是否包含組件類型的控件,識別出當前安裝界面為組件頁;第三模擬點擊單元,用于模擬點擊所述組件頁中所有組件類型控件的按鍵。23.根據(jù)權利要求19所述的裝置,其特征在于,還包括提示框識別單元,用于將當前彈出的彈出框尺寸與所述安裝界面尺寸比較,如果所述彈出框的尺寸小于所述安裝界面的尺寸或小于所述安裝界面的程度超過預置范圍,則識別所述彈出框為提示框;第五查找單元,用于枚舉所述提示框中控件類型的系統(tǒng)API函數(shù),查找所述提示框中按鍵類型的控件;確認識別單元,用于在所述按鍵類型的控件中識別出確認類按鍵;第四位置分析單元,用于通過調用用以獲得位置信息的系統(tǒng)API函數(shù),獲得所述提示框中確認類按鍵的位置信息;第四模擬點擊單元,用于模擬點擊所述提示框中的確認類按鍵。24.根據(jù)權利要求19至23中任一項所述的裝置,其特征在于,所述模擬點擊單元包括模擬鼠標點擊、模擬鍵盤點擊和模擬觸摸點擊中的任意一種。全文摘要本發(fā)明公開了一種用于實現(xiàn)文件收集的方法,包括獲得可安裝的軟件包;運行所述可安裝的軟件包;當出現(xiàn)所述軟件包的安裝界面時分析所述安裝界面的內容,獲得所述安裝界面中繼續(xù)安裝類按鍵的位置信息;根據(jù)所述繼續(xù)安裝類按鍵的位置信息,模擬點擊所述繼續(xù)安裝類按鍵,直至所述軟件包的安裝完成為止;監(jiān)控所述軟件包安裝過程中釋放的文件;收集在所述軟件包的安裝過程中釋放的所需的文件;本發(fā)明還公開了一種用于實現(xiàn)文件收集的裝置,能夠更全面、更高效的收集文件。本發(fā)明還提供了一種用于實現(xiàn)軟件包自動安裝的方法和裝置,能夠提高軟件包的安裝效率,并且可以適用于不同類型軟件包的自動安裝。文檔編號G06F9/445GK102830991SQ20121027047公開日2012年12月19日申請日期2012年7月31日優(yōu)先權日2012年7月31日發(fā)明者馮二波申請人:北京奇虎科技有限公司,奇智軟件(北京)有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1