一種軟件卸載方法及裝置的制造方法
【專利說明】一種軟件卸載方法及裝置
[0001]本發(fā)明專利申請是申請日為2012年3月31日、申請?zhí)枮?01210092473.X、名稱為“一種軟件卸載方法及裝置”的中國發(fā)明專利申請的分案申請。
技術(shù)領(lǐng)域
[0002]本發(fā)明涉及計算機技術(shù)領(lǐng)域,尤其涉及一種軟件卸載方法及裝置。
【背景技術(shù)】
[0003]隨著計算機與互聯(lián)網(wǎng)技術(shù)的發(fā)展,各種應用軟件也層出不窮。大部分的軟件在安裝時都非常容易和友好,但在卸載時,雖然基本都會提供一個自身的卸載程序,但有些軟件出于某種目的或自身的不規(guī)范,常常無法徹底的從用戶電腦中卸載刪除,并殘留下大量垃圾文件,甚至在注冊表中還遺留軟件信息。這些殘留的文件或數(shù)據(jù)可能是保留用戶自定義設置的文件,但也有可能是因為卸載程序不完善,而遺留的部分殘余文件或數(shù)據(jù),這為用戶造成了很大的困擾,同時也影響了計算機的性能。
[0004]雖然目前有部分軟件在卸載后會提供一個需要手動刪除的提示,但對于廣大的普通用戶來說,并不會了解如何去手動刪除遺留文件,因此,如何提供一種完善的軟件卸載機制,已經(jīng)成為業(yè)界亟待解決的問題。
【發(fā)明內(nèi)容】
[0005]本發(fā)明所要解決的技術(shù)問題在于提供一種軟件卸載方法及裝置,以克服現(xiàn)有技術(shù)中很難完全徹底的將軟件進行卸載的問題。
[0006]為解決上述技術(shù)問題,本發(fā)明提供一種軟件卸載方法,包括如下步驟:
[0007]針對客戶端已安裝的軟件,在客戶端中配置一個軟件安裝信息庫及一個卸載保護庫,其中,所述軟件安裝信息庫記載有已安裝軟件的安裝信息,所述安裝信息包括所述已安裝軟件在安裝過程中所添加或修改的項目的位置信息;所述卸載保護庫中記載有對所述已安裝軟件的卸載保護條件;
[0008]在偵測到用戶針對某款已安裝軟件執(zhí)行卸載操作時,在所述軟件安裝信息庫及所述卸載保護庫中查找該已安裝軟件對應的的安裝信息及對應的卸載保護條件,根據(jù)所述對應的安裝信息定位應清除的項目的位置,如果判斷該項目的清除未觸發(fā)所述對應的卸載保護條件,則執(zhí)行相應的項目清除。
[0009]本發(fā)明還提供一種軟件卸載裝置,包括:
[0010]配置模塊,用于針對客戶端已安裝的軟件,在客戶端中配置一個軟件安裝信息庫及一個卸載保護庫,其中,所述軟件安裝信息庫記載有已安裝軟件的安裝信息,所述安裝信息包括所述已安裝軟件在安裝過程中所添加或修改的項目的位置信息;所述卸載保護庫中記載有對所述已安裝軟件的卸載保護條件;
[0011]執(zhí)行模塊,用于在偵測到用戶針對某款已安裝軟件執(zhí)行卸載操作時,在所述軟件安裝信息庫及所述卸載保護庫中查找該已安裝軟件對應的安裝信息及對應的卸載保護條件,根據(jù)所述對應的安裝信息定位應清除的項目的位置,如果判斷該項目的清除未觸發(fā)所述對應的卸載保護條件,則執(zhí)行相應的項目清除。
[0012]應用本申請的實施例,既可以提高軟件卸載時的速度和效率,也可以增強軟件卸載時的安全性和徹底性,很好的彌補現(xiàn)有軟件普遍存在的卸載缺陷,從卸載的方向上為用戶保證了操作系統(tǒng)的整潔,也利于操作系統(tǒng)的日常維護。本申請的實施例通過對殘留項目的清掃,也避免了部分惡意軟件常駐用戶系統(tǒng)的行為,并且,由于部分軟件會自動保留用戶私人數(shù)據(jù),通過本申請的技術(shù)方案,可以為用戶提供快速清除隱私文件的功能,在用戶隱私保護上起到了一定的保護作用。
【附圖說明】
[0013]為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0014]圖1為根據(jù)本申請的實施例所述的軟件卸載方法流程圖。
[0015]圖2為根據(jù)本申請另一實施例所述的軟件卸載方法流程圖。
[0016]圖3為圖2的具體實施流程圖。
[0017]圖4為根據(jù)本申請的實施例所述的軟件卸載裝置示意圖。
[0018]圖5為根據(jù)本申請另一實施例所述的軟件卸載裝置示意圖。
【具體實施方式】
[0019]下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。
[0020]如圖1所示,為根據(jù)本申請實施例所述的軟件卸載方法流程圖,包括如下步驟:
[0021]步驟101:針對客戶端已安裝的軟件,在客戶端中配置一個軟件安裝信息庫及一個卸載保護庫,其中,所述軟件安裝信息庫記載有已安裝軟件的安裝信息,所述安裝信息包括已安裝軟件在安裝過程中所添加或修改的項目的位置信息;所述卸載保護庫中記載有對已安裝軟件的卸載保護條件;
[0022]步驟102:在偵測到用戶針對某款已安裝軟件執(zhí)行卸載操作時,在所述軟件安裝信息庫及卸載保護庫中查找該已安裝軟件對應的安裝信息及卸載保護條件,根據(jù)對應的安裝信息定位應清除的項目的位置,如果判斷該項目的清除未觸發(fā)對應的卸載保護條件,則執(zhí)行相應的項目清除。
[0023]其中,在步驟101中所述的配置動作,可以是由服務器端根據(jù)客戶端定期上報的已安裝軟件列表而將對應的軟件安裝信息更新至相應的客戶端。而在服務器端,則可以針對裝機量比較大的軟件進行事先分析,記錄其安裝信息,當客戶端根據(jù)自身安裝的軟件請求其安裝信息時,由服務器端將對應的軟件安裝信息發(fā)送至客戶端。
[0024]所述卸載保護條件,包括特定安裝目錄下的文件數(shù)量及/或大小的限制。通過卸載保護庫提供的保護限制,可以防止用戶在卸載軟件的時候誤刪除文件,如針對某個軟件目錄下的文件數(shù)量區(qū)間規(guī)定,對用戶生成的一些記錄文件的路徑等。例如,可以規(guī)定某個軟件安裝文件夾下的文件應該是在20-150之間,大小在50M內(nèi),如果超出這個范圍,則該目錄下文件有異常,可能有用戶自己保存的文檔,這樣就不會整體對文件夾進行刪除,而是先過濾文件夾內(nèi)的文件,再有針對性的進行刪除。
[0025]所述卸載保護條件,還可以包括是否存在該軟件提供的下載文件保存位置,如果存在,則對該位置進行保留。例如,考慮到某個軟件為用戶提供了下載功能,而當卸載該軟件的時候,會先掃描出下載文件保存位置,并對該位置保留,在卸載完成后,提示用戶下載保存位置。
[0026]上述卸載保護庫中的卸載保護條件,同樣是可以在服務器端通過對常規(guī)軟件的事先分析而獲得,并根據(jù)客戶端的請求而發(fā)送至客戶端。
[0027]此外,根據(jù)本發(fā)明的實施例,在執(zhí)行上述卸載操作之前,還可以進行另一種卸載方式,如圖2所示,在偵測到用戶針對某款已安裝軟件執(zhí)行卸載操作時,可首先執(zhí)行以下步驟:
[0028]步驟201:在客戶端獲取待卸載軟件存在于該客戶端中的所有項目信息,并對所述項目信息進行保存;
[0029]步驟202:調(diào)用所述待卸載軟件自身的卸載程序,執(zhí)行正常卸載流程;
[0030]步驟203:在所述正常卸載完成后,根據(jù)所述保存的項目信息判斷是否存在殘留項目,如果存在,則清除所述殘留項目。
[0031]在該實施例中,在卸載前會先針對待卸載軟件在終端進行深度掃描分析,將該軟件的注冊表信息、程序源文件、運行生成文檔等項目都檢測出來,并將項目的名稱及路徑等項目信息進行保存。在現(xiàn)有的計算機主流配置下,這種軟件信息分析的時間會非常短暫,不會影響到用戶體驗。
[0032]另一種方式是在軟件安裝時即對其安裝行為進行監(jiān)測和記錄,并在該軟件后期執(zhí)行過程中對生成的文檔信息進行記錄,由此也可獲知與該軟件有關(guān)的項目信息,但這種方式無疑會造成一定的存儲空間占用。
[0033]還有一種方式是在服務器端通過事先分析該軟件的安裝行為而記錄生成一張該軟件的相關(guān)項目信息列表,并在客戶端請求時或定時發(fā)送到客戶端,由此也可獲知該軟件的項目信息。但該方式一方面是需要網(wǎng)絡環(huán)境,另一方面也只適用于一般的流行軟件,對于一些較為小眾的軟件,服務器端很難做到全面的事先分析,同時,也很難捕捉到軟件運行生成的文檔等過程文件。
[0034]而通過本地掃描的方式可以最為準確的將待卸載軟件的項目信息檢測出來,同時將這些項目存在的路徑和名稱進行暫時保存,以供后續(xù)比對所用。
[0035]在獲取待卸載軟件的項目信息后,即可以調(diào)用該軟件自帶的卸載程序執(zhí)行正常的卸載流程。
[0036]然后,當軟件正常卸載完成后,通過事先保存的項目信息進行殘余項目掃描比對,如果發(fā)現(xiàn)所述保存的項目已經(jīng)全部清除完畢,則說明未留下殘余項目,否則,則說明存在有未清除的項目,此時,可以提示用戶有殘留文件存在,還可以進一步提供殘留項目的名稱和路徑,并提供一對應的選擇框,以允許用戶選擇要清除的殘留項目強力清掃,方便用戶簡單的清掃掉所有殘余項目,也方便用戶有選擇的清除某些特定殘留項目。
[0037]例如,對于某些過程文件,該軟件自帶的標準卸載程序可能無法獲知也無法執(zhí)行刪除,但通過本申請的技術(shù)方案,通過事先掃描獲取了有關(guān)文件的存在和位置,這時,可以根據(jù)事先的掃描記錄而找到該過程文件的位置并直接刪除。而對于某些注冊表信息的修改,也可以根據(jù)事先的掃描記錄而定位其位置并清理或還原。
[0038]在清除掉全部殘余項目后,即可以將之前臨時保存的項目信息刪除了。
[0039]下面可通過圖3的具體實施例對本申請做進一步的理解。
[0040]首先,在步驟301中,掃描待卸載軟件的所有文件,獲得該軟件的文件信息;
[0041]然后,在步驟302中,對文件信息進行臨時保存;
[0042]步驟303中,調(diào)用該軟件自身的卸載程序;
[0043]步驟304中,執(zhí)行正常卸載流程,常規(guī)卸載完成;
[0044]步驟305中,根據(jù)保存的文件信息再次掃描客戶端文件,判斷是否存在殘余文件;
[0045]如果不存在,則執(zhí)行步驟306,全部卸載完成,確定無殘留文件;
[0046]如果存在有殘留文件,則執(zhí)彳丁步驟307,提供強力清掃功能;
[0047]步驟308中,清掃殘余文件,然后結(jié)束。
[0048]在實踐中,可以將圖1所述卸載流程與圖2所述