專利名稱:一種實(shí)現(xiàn)補(bǔ)丁修正的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本申請涉及計(jì)算機(jī)技術(shù)領(lǐng)域,特別是涉及ー種實(shí)現(xiàn)補(bǔ)丁修正的方法及裝置。
背景技術(shù):
在目前計(jì)算機(jī)的各種應(yīng)用過程中,常常會發(fā)現(xiàn)各種操作系統(tǒng)、應(yīng)用軟件等存在問題或漏洞,也可稱為BUG,而這些漏洞會使用戶在使用操作系統(tǒng)或軟件時(shí)出現(xiàn)干擾,或者導(dǎo)致軟件的安全性能降低,因此可以通過寫出一些可插入源程序的程序語言,對這些漏洞進(jìn)行修復(fù),上述用于修復(fù)漏洞的程序語言就稱為補(bǔ)丁?,F(xiàn)有技術(shù)中,ー些操作系統(tǒng)或應(yīng)用軟 件的專門網(wǎng)站會定期發(fā)布一段時(shí)間內(nèi)的補(bǔ)丁,以針對這些操作系統(tǒng)或應(yīng)用軟件進(jìn)行漏洞修復(fù);然而,發(fā)明人在對現(xiàn)有技術(shù)的研究過程中發(fā)現(xiàn),現(xiàn)有技術(shù)中專門網(wǎng)站經(jīng)常會出現(xiàn)在補(bǔ)丁發(fā)布之后又針對該補(bǔ)丁的發(fā)不了補(bǔ)丁撤銷頁面,以通知用戶卸載該已發(fā)布的補(bǔ)丁,而無法及時(shí)對上述應(yīng)撤銷補(bǔ)丁進(jìn)行移除,則很有可能對計(jì)算機(jī)系統(tǒng)或應(yīng)用程序構(gòu)成嚴(yán)重的威脅。
發(fā)明內(nèi)容
本申請實(shí)施例提供了ー種實(shí)現(xiàn)補(bǔ)丁修正的方法及裝置,以解決現(xiàn)有沒有及時(shí)對應(yīng)撤銷補(bǔ)丁進(jìn)行移除所導(dǎo)致的問題。為了解決上述技術(shù)問題,本申請實(shí)施例公開了如下技術(shù)方案ー種實(shí)現(xiàn)補(bǔ)丁修正的方法,包括獲取應(yīng)撤銷補(bǔ)丁信息;利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。優(yōu)選的,采用如下方式實(shí)現(xiàn)應(yīng)撤銷補(bǔ)丁信息的獲取利用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,則自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息。優(yōu)選的,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、ネト丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息。優(yōu)選的,在所述移除操作前還包括根據(jù)所述應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,再利用所述撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息執(zhí)行移除操作。優(yōu)選的,在所述移除操作前還包括判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行移除操作。優(yōu)選的,所述判斷步驟包括利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝。
優(yōu)選的,所述判斷步驟包括利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝。優(yōu)選的,所述移除操作可通過以下步驟實(shí)現(xiàn)查找已安裝的應(yīng)撤銷補(bǔ)丁對應(yīng)的安裝⑶ID,調(diào)用系統(tǒng)MSI接ロ執(zhí)行卸載補(bǔ)丁命令。優(yōu)選的,所述移除操作可通過以下步驟實(shí)現(xiàn)查找所述應(yīng)撤銷補(bǔ)丁安裝前備份 的源文件;利用所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件;在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值。優(yōu)選的,所述移除操作包括以下幾種方式中的ー種卸載、刪除、更新、覆蓋。ー種實(shí)現(xiàn)補(bǔ)丁修正的裝置,包括獲取單元,用于獲取應(yīng)撤銷補(bǔ)丁信息;移除単元,用于利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。優(yōu)選的,所述獲取単元包括刷新模塊,用于利用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;第一判斷模塊,用于當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議,并將判斷結(jié)果通知抓取模塊;抓取模塊,用于當(dāng)所述補(bǔ)丁發(fā)布頁面的更新消息中包含補(bǔ)丁撤銷建議吋,自動(dòng)訪問該更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息。優(yōu)選的,所述裝置還包括組包單元,用于根據(jù)所述獲取單元獲取的應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,再將該所述撤銷指示包發(fā)送給所述移除単元,用以指示所述移除単元利用所述撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息執(zhí)行移除操作。優(yōu)選的,所述裝置還包括判斷単元,用于判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝,如果是,則通知所述移除單元執(zhí)行移除操作。優(yōu)選的,所述判斷單元包括利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第一處理模塊;和/或,利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第二處理模塊。優(yōu)選的,所述移除単元包括第一查找模塊,用于查找已安裝的應(yīng)撤銷補(bǔ)丁對應(yīng)的安裝⑶ID ;調(diào)用模塊,用于調(diào)用系統(tǒng)MSI接ロ執(zhí)行卸載補(bǔ)丁命令。優(yōu)選的,所述移除単元包括第二查找模塊,用于查找所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件;覆蓋模塊,用于所述第二查找模塊查找到的所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件;刪除模塊,用于在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值。由上述實(shí)施例可以看出,本申請實(shí)施例中,通過獲取應(yīng)撤銷補(bǔ)丁的信息,利用該補(bǔ)丁信息對已安裝的應(yīng)撤銷補(bǔ)丁執(zhí)行移除操作,從而解決了現(xiàn)有技術(shù)由于沒有及時(shí)對應(yīng)撤銷補(bǔ)丁進(jìn)行移除所導(dǎo)致的問題,有效的保證了用戶的系統(tǒng)安全和穩(wěn)定,提升了用戶體驗(yàn)。
為了更清楚地說明本申請實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,對于本領(lǐng)域普通技術(shù)人員而言,在不付出創(chuàng)造性勞動(dòng)性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖I為本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的第一實(shí)施例流程示意圖;圖2為本申請第一實(shí)施例中獲取應(yīng)撤銷補(bǔ)丁信息的流程示意圖;圖3為本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的第二實(shí)施例流程示意圖;
圖4為本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的第三實(shí)施例流程示意圖;圖5為本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的第四實(shí)施例流程示意圖;圖6為本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的第五實(shí)施例流程示意7為本申請實(shí)現(xiàn)補(bǔ)丁修正的裝置的實(shí)施例框圖。
具體實(shí)施例方式本發(fā)明的基本思想在于當(dāng)專門網(wǎng)站出現(xiàn)了撤銷補(bǔ)丁頁面后,通過獲取該應(yīng)撤銷補(bǔ)丁信息,利用補(bǔ)丁修正模塊對應(yīng)撤銷補(bǔ)丁進(jìn)行移除,從而有效的保證了用戶的系統(tǒng)安全和穩(wěn)定。本發(fā)明如下實(shí)施例提供了ー種實(shí)現(xiàn)補(bǔ)丁修正的方法及裝置。為了使本技術(shù)領(lǐng)域的人員更好地理解本發(fā)明實(shí)施例中的技術(shù)方案,并使本發(fā)明實(shí)施例的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖對本發(fā)明實(shí)施例中技術(shù)方案作進(jìn)ー步詳細(xì)的說明。參見圖I,為本申請實(shí)現(xiàn)補(bǔ)丁修正方法的第一實(shí)施例流程圖步驟101 :獲取應(yīng)撤銷補(bǔ)丁信息;具體的,在實(shí)際操作中可采用多種獲取應(yīng)撤銷補(bǔ)丁信息的方式如人工方式和非人工方式等;下面舉例具體說明如何獲取應(yīng)撤銷補(bǔ)丁信息,但并不局限于此,如圖2所示SlOll :采用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;例如,采用刷屏軟件程序定期刷新微軟的補(bǔ)丁發(fā)布頁面;也可設(shè)置為在補(bǔ)丁發(fā)布之后一段時(shí)間內(nèi)刷新所述補(bǔ)丁發(fā)布頁面;S1012:當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,則執(zhí)行步驟S1013,否則返回執(zhí)行步驟SlOll ;具體的判斷過程采用現(xiàn)有技術(shù)中頁面關(guān)鍵字的判斷技術(shù)實(shí)現(xiàn)例如分析當(dāng)前頁面的源代碼信息,其中如果包含了關(guān)鍵字“撤銷”等,即可確認(rèn)當(dāng)前頁面包含了補(bǔ)丁撤銷建議;具體內(nèi)容本文不再贅述;S1013 自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息;其中,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL (Universal Resource Locator,統(tǒng)ー資源定位符)信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息等。步驟102 :利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁 ;
其中,本實(shí)施例中補(bǔ)丁的移除方式包括但不限于卸載、刪除、更新、覆蓋等方式;還可以采用其他方式,例如如果應(yīng)撤銷補(bǔ)丁信息中包含了對應(yīng)撤銷補(bǔ)丁的更新補(bǔ)丁下載URL,則終端會根據(jù)所述更新補(bǔ)丁下載URL訪問并下載該更新補(bǔ)丁,再運(yùn)行該更新補(bǔ)丁的安裝程序,以此來完成應(yīng)撤銷補(bǔ)丁的移除操作;再例如當(dāng)獲取到應(yīng)撤銷補(bǔ)丁信息后,第三方軟件可以利用所述應(yīng)撤銷補(bǔ)丁信息來執(zhí)行所述應(yīng)撤銷補(bǔ)丁的移除操作;還可例如執(zhí)行應(yīng)撤銷補(bǔ)丁或系統(tǒng)預(yù)設(shè)的移除程序,當(dāng)獲取到應(yīng)撤銷補(bǔ)丁信息后,利用所述應(yīng)撤銷補(bǔ)丁信息來執(zhí)行相應(yīng)補(bǔ)丁的移除操作;當(dāng)然,本領(lǐng)域普通技術(shù)人員很容易了解,所述移除操作還可以存在多種方式,本文在此不再贅述。優(yōu)選的,在所述移除操作前還可包括但不限于以下操作判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果否,則結(jié)束操作;否則,執(zhí)行移除操作;具體的判斷方式可采用如下兩種方式中的任 意ー種,但不局限于此A :利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;例如若要判斷補(bǔ)丁 KB979099是否已安裝,首先在注冊表的以下項(xiàng)目中查詢是否有包含KB979099的鍵值HKEY_LOCAL_MACHINE\SOFTWARE\Mi crosof t\ff indows\CurrentVer s ion\しomponent Based bervicing\Packages\如果已安裝了所述補(bǔ)丁,則上述注冊■表的項(xiàng)目中必然存在類似Package_for_KB979099_RTM 31bf3856ad364e35 x86 6. I. I. 0的注冊鍵存在,此鍵中為所述補(bǔ)丁的安裝信息;以此即可判斷當(dāng)前應(yīng)撤銷補(bǔ)丁是否已安裝。B :利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;具體的,可利用所述應(yīng)撤銷補(bǔ)丁信息中的文件版本號或文件名等來進(jìn)行判斷,但不局限于此例如應(yīng)撤銷補(bǔ)丁為更新補(bǔ)丁,其作用是使其對應(yīng)的應(yīng)用程序更新至版本為10. I. 102. 64 ;若要判斷該應(yīng)撤銷補(bǔ)丁是否已安裝,即需要在該應(yīng)用程序所在盤符目錄下查詢版本為10. I. 102. 64的文件是否存在,如果文件存在,則可確認(rèn)所述應(yīng)撤銷補(bǔ)丁已安裝。此外,值得注意的是,在所述移除操作前還可包括但不限于以下操作當(dāng)獲取到所述應(yīng)撤銷補(bǔ)丁信息后,利用該應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,然后再利用該撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息來執(zhí)行后續(xù)的移除操作。下面結(jié)合幾種實(shí)際應(yīng)用實(shí)例對本申請補(bǔ)丁包信息的輸出方法的實(shí)施例進(jìn)行描述。參見圖3,為本申請實(shí)現(xiàn)補(bǔ)丁修正方法的第二實(shí)施例步驟301 :獲取應(yīng)撤銷補(bǔ)丁信息;具體的,可采用如下方式何獲取應(yīng)撤銷補(bǔ)丁信息,但并不局限于此S3011 :采用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;S3012:當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,執(zhí)行步驟S3013 ;否則,結(jié)束操作;S3013 :則自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息;其中,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL (Universal Resource Locator,統(tǒng)一資源定位符)信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息等。步驟302 :利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行步驟303 ;如果否,則結(jié)束操作。例如若要判斷補(bǔ)丁 KB979099是否已安裝,首先在注冊表的以下項(xiàng)目中查詢是否有包含KB979099的鍵值HKEY_LOCAL_MACHINE\SOFTWARE\Mi crosof t\ffindows\CurrentVer s ion\しomponent Based bervicing\Packages\如果已安裝了所述補(bǔ)丁,則上述注冊■表的項(xiàng)目中必然存在類似Package_for_KB979099_RTM 31bf3856ad364e35 x86 6. I. I. 0的注冊鍵存在,此鍵中為所述補(bǔ)丁的安裝信息;以此即可判斷當(dāng)前應(yīng)撤銷補(bǔ)丁是否已安裝。步驟303 :找到補(bǔ)丁對應(yīng)的安裝⑶ID,調(diào)用 系統(tǒng)MSI接ロ執(zhí)行卸載補(bǔ)丁命令;其中,調(diào)用系統(tǒng)MSI接ロ執(zhí)行的具體的卸載命令如下所示;msiexec. exe/quiet /package {90120000-0011-0000-0000-0000000FF1CE}/uninstall{7961E819-93A5-40A8-8469-4BE2FBBFACEF}。參見圖4,為本申請實(shí)現(xiàn)補(bǔ)丁修正方法的第三實(shí)施例步驟401 :獲取應(yīng)撤銷補(bǔ)丁信息;具體的,可采用如下方式何獲取應(yīng)撤銷補(bǔ)丁信息,但并不局限于此S4011 :采用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;S4012:當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,執(zhí)行步驟S3013 ;否則,結(jié)束操作;S4013 :則自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息;其中,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL (Universal Resource Locator,統(tǒng)一資源定位符)信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息等。步驟402 :利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行步驟403 ;如果否,則結(jié)束操作。具體的,可利用所述應(yīng)撤銷補(bǔ)丁信息中的文件版本號或文件名等來進(jìn)行判斷,但不局限于此例如應(yīng)撤銷補(bǔ)丁為更新補(bǔ)丁,其作用是使其對應(yīng)的應(yīng)用程序更新至版本為10. I. 102. 64 ;若要判斷該應(yīng)撤銷補(bǔ)丁是否已安裝,即需要在該應(yīng)用程序所在盤符目錄下查詢版本為10. I. 102. 64的文件是否存在,如果文件存在,則可確認(rèn)所述應(yīng)撤銷補(bǔ)丁已安裝。步驟403 :找到所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件,利用將所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件,并在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值,完成補(bǔ)丁的移除。參見圖5,為本申請實(shí)現(xiàn)補(bǔ)丁修正方法的第四實(shí)施例步驟501 :獲取應(yīng)撤銷補(bǔ)丁信息;具體的,可采用如下方式何獲取應(yīng)撤銷補(bǔ)丁信息,但并不局限于此S5011 :采用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;S5012:當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,執(zhí)行步驟S3013 ;否則,結(jié)束操作;S5013 :則自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息;其中,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL (Universal Resource Locator,統(tǒng)一資源定位符)信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息等。步驟502 :利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行步驟503 ;如果否,則結(jié)束操作。例如若要判斷補(bǔ)丁 KB979099是否已安裝,首先在注冊表的以下項(xiàng)目中查詢是否有包含KB979099的鍵值HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ffindows\CurrentVersi on\しomponent Based bervicing\Packages\如果已安裝了所述補(bǔ)丁,則上述注 冊■表的項(xiàng)目中必然存在類似Package_for_KB979099_RTM 31bf3856ad364e35 x86 6. I. I. 0的注冊鍵存在,此鍵中為所述補(bǔ)丁的安裝信息;以此即可判斷當(dāng)前應(yīng)撤銷補(bǔ)丁是否已安裝。步驟503 :找到所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件,利用將所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件,并在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值,完成補(bǔ)丁的移除。參見圖6,為本申請實(shí)現(xiàn)補(bǔ)丁修正方法的第五實(shí)施例步驟601 :獲取應(yīng)撤銷補(bǔ)丁信息;具體的,可采用如下方式何獲取應(yīng)撤銷補(bǔ)丁信息,但并不局限于此S6011 :采用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;S6012:當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,執(zhí)行步驟S3013 ;否則,結(jié)束操作;S6013 :則自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息;其中,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意ー種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL (Universal Resource Locator,統(tǒng)一資源定位符)信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息等。步驟602 :利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行步驟603 ;如果否,則結(jié)束操作。具體的,可利用所述應(yīng)撤銷補(bǔ)丁信息中的文件版本號或文件名等來進(jìn)行判斷,但不局限于此例如應(yīng)撤銷補(bǔ)丁為更新補(bǔ)丁,其作用是使其對應(yīng)的應(yīng)用程序更新至版本為10. I. 102. 64 ;若要判斷該應(yīng)撤銷補(bǔ)丁是否已安裝,即需要在該應(yīng)用程序所在盤符目錄下查詢版本為10. I. 102. 64的文件是否存在,如果文件存在,則可確認(rèn)所述應(yīng)撤銷補(bǔ)丁已安裝。步驟603 :找到補(bǔ)丁對應(yīng)的安裝GUID,調(diào)用系統(tǒng)MSI接ロ執(zhí)行卸載補(bǔ)丁命令;其中,調(diào)用系統(tǒng)MSI接ロ執(zhí)行的具體的卸載命令如下所示;msiexec. exe/quiet/package {90120000-0011-0000-0000-0000000FF1CE}/uninstall{7961E819-93A5-40A8-8469-4BE2FBBFACEF}??梢钥闯?,采用本發(fā)明上述實(shí)施例的方法,通過獲取應(yīng)撤銷補(bǔ)丁的信息,利用該補(bǔ)丁信息對已安裝的應(yīng)撤銷補(bǔ)丁執(zhí)行移除操作,從而解決了現(xiàn)有技術(shù)由于沒有及時(shí)對應(yīng)撤銷補(bǔ)丁進(jìn)行移除所導(dǎo)致的問題,有效的保證了用戶的系統(tǒng)安全和穩(wěn)定,提升了用戶體驗(yàn)。與本申請實(shí)現(xiàn)補(bǔ)丁修正的方法的實(shí)施例相對應(yīng),本申請還提供了實(shí)現(xiàn)該方法的裝置的實(shí)施例。
參見圖7、為本申請實(shí)現(xiàn)補(bǔ)丁修正的裝置的實(shí)施例框圖該裝置包括獲取單元710和移除單元720。其中,所述獲取単元710,用于獲取應(yīng)撤銷補(bǔ)丁信息;所述移除単元720,用于利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。進(jìn)ー步的,所述獲取単元710還可包括(圖7中未示出)刷新模塊,用于利用第三方工具定期刷新補(bǔ)丁發(fā)布頁面;第一判斷模塊,用于當(dāng)所述補(bǔ)丁發(fā)布 頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議,并將判斷結(jié)果通知抓取模塊;抓取模塊,用于當(dāng)所述補(bǔ)丁發(fā)布頁面的更新消息中包含補(bǔ)丁撤銷建議吋,自動(dòng)訪問該更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息。優(yōu)選的,本實(shí)施例的實(shí)現(xiàn)補(bǔ)丁修正的裝置還包括組包單元(圖7中未示出),用于根據(jù)所述獲取単元710獲取的應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,再將該所述撤銷指示包發(fā)送給所述移除単元720,用以指示所述移除単元720利用所述撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息執(zhí)行移除操作。優(yōu)選的,本實(shí)施例的實(shí)現(xiàn)補(bǔ)丁修正的裝置還可包括判斷単元(圖7中未示出),用于判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝,如果是,則通知所述移除単元720執(zhí)行移除操作。進(jìn)ー步的,所述判斷単元包括利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第一處理模塊;和/或,利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第二處理模塊;值得注意的是,所述判斷単元包括的這兩個(gè)模塊可以同時(shí)存在于判斷単元中,當(dāng)然也可以只存在ー個(gè),具體視系統(tǒng)需求而定,本文在此不再贅述。優(yōu)選的,所述移除単元720包括(圖7中未示出):第一查找模塊,用于查找已安裝的應(yīng)撤銷補(bǔ)丁對應(yīng)的安裝⑶ID ;調(diào)用模塊,用于調(diào)用系統(tǒng)MSI接ロ執(zhí)行卸載補(bǔ)丁命令。此外,所述移除單元還可包括第二查找模塊,用于查找所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件;覆蓋模塊,用于所述第二查找模塊查找到的所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件;刪除模塊,用于在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值。本領(lǐng)域的技術(shù)人員可以清楚地了解到本發(fā)明實(shí)施例中的技術(shù)可借助軟件加必需的通用硬件平臺的方式來實(shí)現(xiàn)?;谶@樣的理解,本發(fā)明實(shí)施例中的技術(shù)方案本質(zhì)上或者說對現(xiàn)有技術(shù)做出貢獻(xiàn)的部分可以以軟件產(chǎn)品的形式體現(xiàn)出來,該計(jì)算機(jī)軟件產(chǎn)品可以存儲在存儲介質(zhì)中,如R0M/RAM、磁碟、光盤等,包括若干指令用以使得一臺計(jì)算機(jī)設(shè)備(可以是個(gè)人計(jì)算機(jī),服務(wù)器,或者網(wǎng)絡(luò)設(shè)備等)執(zhí)行本發(fā)明各個(gè)實(shí)施例或者實(shí)施例的某些部分所述的方法。本說明書中的各個(gè)實(shí)施例均采用遞進(jìn)的方式描述,各個(gè)實(shí)施例之間相同相似的部分互相參見即可,每個(gè)實(shí)施例重點(diǎn)說明的都是與其他實(shí)施例的不同之處。尤其,對于系統(tǒng)實(shí)施例而言,由于其基本相似于方法實(shí)施例,所以描述的比較簡單,相關(guān)之處參見方法實(shí)施例的部分說明即可。
以上所述的本發(fā)明實(shí)施 方式,并不構(gòu)成對本發(fā)明保護(hù)范圍的限定。任何在本發(fā)明的精神和原則之內(nèi)所作的修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種實(shí)現(xiàn)補(bǔ)丁修正的方法,其特征在于,包括 獲取應(yīng)撤銷補(bǔ)丁信息; 利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。
2.根據(jù)權(quán)利要求I所述的方法,其特征在于,采用如下方式實(shí)現(xiàn)應(yīng)撤銷補(bǔ)丁信息的獲取 利用第三方工具定期刷新補(bǔ)丁發(fā)布頁面; 當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議;如果是,貝丨J 自動(dòng)訪問更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述應(yīng)撤銷補(bǔ)丁信息至少包括下述信息中的任意一種補(bǔ)丁名稱信息、補(bǔ)丁類型信息、補(bǔ)丁等級信息、補(bǔ)丁發(fā)布日期信息、補(bǔ)丁公告URL信息、補(bǔ)丁的大小信息、補(bǔ)丁運(yùn)行參數(shù)信息、補(bǔ)丁的版本信息、補(bǔ)丁描述信息。
4.根據(jù)權(quán)利要求I所述的方法,其特征在于,在所述移除操作前還包括 根據(jù)所述應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,再利用所述撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息執(zhí)行移除操作。
5.根據(jù)權(quán)利要求I所述的方法,其特征在于,在所述移除操作前還包括 判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝;如果是,則執(zhí)行移除操作。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述判斷步驟包括 利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝。
7.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述判斷步驟包括 利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝。
8.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述移除操作可通過以下步驟實(shí)現(xiàn) 查找已安裝的應(yīng)撤銷補(bǔ)丁對應(yīng)的安裝GUID,調(diào)用系統(tǒng)MSI接口執(zhí)行卸載補(bǔ)丁命令。
9.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述移除操作可通過以下步驟實(shí)現(xiàn) 查找所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件; 利用所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件; 在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值。
10.根據(jù)權(quán)利要求I所述的方法,其特征在于,所述移除操作包括以下幾種方式中的一種卸載、刪除、更新、覆蓋。
11.一種實(shí)現(xiàn)補(bǔ)丁修正的裝置,其特征在于,包括 獲取單元,用于獲取應(yīng)撤銷補(bǔ)丁信息; 移除單元,用于利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。
12.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述獲取單元包括 刷新模塊,用于利用第三方工具定期刷新補(bǔ)丁發(fā)布頁面; 第一判斷模塊,用于當(dāng)所述補(bǔ)丁發(fā)布頁面存在更新信息時(shí),判斷該更新消息是否包含補(bǔ)丁撤銷建議,并將判斷結(jié)果通知抓取模塊; 抓取模塊,用于當(dāng)所述補(bǔ)丁發(fā)布頁面的更新消息中包含補(bǔ)丁撤銷建議時(shí),自動(dòng)訪問該更新鏈接,并抓取應(yīng)撤銷補(bǔ)丁信息。
13.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述裝置還包括組包單元,用于根據(jù)所述獲取單元獲取的應(yīng)撤銷補(bǔ)丁信息組成撤銷指示包,再將該所述撤銷指示包發(fā)送給所述移除單元,用以指示所述移除單元利用所述撤銷指示包中包含的所述應(yīng)撤銷補(bǔ)丁信息執(zhí)行移除操作。
14.根據(jù)權(quán)利要求11所述的裝置,其特征在于,所述裝置還包括 判斷單元,用于判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝,如果是,則通知所述移除單元執(zhí)行移除操作。
15.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述判斷單元包括 利用注冊表中的鍵值信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第一處理模塊;和/或,利用已獲取的應(yīng)撤銷補(bǔ)丁信息判斷所述應(yīng)撤銷補(bǔ)丁是否已安裝的第二處理模塊。
16.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述移除單元包括 第一查找模塊,用于查找已安裝的應(yīng)撤銷補(bǔ)丁對應(yīng)的安裝GUID ; 調(diào)用模塊,用于調(diào)用系統(tǒng)MSI接口執(zhí)行卸載補(bǔ)丁命令。
17.根據(jù)權(quán)利要求14所述的裝置,其特征在于,所述移除單元包括 第二查找模塊,用于查找所述應(yīng)撤銷補(bǔ)丁安裝前備份的源文件; 覆蓋模塊,用于所述第二查找模塊查找到的所述備份的源文件覆蓋當(dāng)前已安裝的應(yīng)撤銷補(bǔ)丁文件; 刪除模塊,用于在注冊表中刪除所述應(yīng)撤銷補(bǔ)丁對應(yīng)的鍵值。
全文摘要
本申請實(shí)施例公開了一種實(shí)現(xiàn)補(bǔ)丁修正的方法和裝置;其中,所述方法包括獲取應(yīng)撤銷補(bǔ)丁信息;利用所述應(yīng)撤銷補(bǔ)丁信息移除該已安裝的補(bǔ)丁。采用本發(fā)明實(shí)施例提供的方法和裝置,通過獲取應(yīng)撤銷補(bǔ)丁的信息,利用該補(bǔ)丁信息對已安裝的應(yīng)撤銷補(bǔ)丁執(zhí)行移除操作,從而解決了現(xiàn)有技術(shù)由于沒有及時(shí)對應(yīng)撤銷補(bǔ)丁進(jìn)行移除所導(dǎo)致的問題,有效的保證了用戶的系統(tǒng)安全和穩(wěn)定,提升了用戶體驗(yàn)。
文檔編號G06F21/57GK102855442SQ201210277968
公開日2013年1月2日 申請日期2011年2月21日 優(yōu)先權(quán)日2011年2月21日
發(fā)明者浦欣, 李濤 申請人:北京奇虎科技有限公司