System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本公開涉及計算機領域。更具體地,涉及一種軟件版本的對比方法及系統(tǒng)。
技術介紹
1、目前,實現軟件版本對比的現有技術包括利用人工在軟件中標注版本信息,對比查看版本是否一致;或者不基于版本信息,利用對比軟件程序文件的消息摘要算法第五版(message?digest?algorithm,md5)碼等類似的文件特征碼,特征碼的異同代表軟件版本的異同。
2、然而,現有技術存在不足之處,例如人工標注版本信息方法容易存在誤標和漏標版本信息的情況;對于未改動過代碼且僅是重新編譯過的軟件,雖然編譯前后實為同一版本,但前后兩次因文件創(chuàng)建的時間不同,導致新舊軟件程序文件特征碼并不相同,因此,對比文件特征碼方法無法針對該種情況得出準確的版本對比結果。
3、總之,現有技術中的軟件版本的對比方法無法實現既無需版本信息又可準確識別僅原狀態(tài)重新編譯的軟件版本對比功能。
技術實現思路
1、本公開的目的在于提供一種軟件版本的對比方法及系統(tǒng),以解決現有技術存在的問題中的至少一個。
2、為達到上述目的,本公開采用下述技術方案:
3、本公開第一方面提供了一種軟件版本的對比方法,該方法包括在同種操作系統(tǒng)中建立服務器端以及與所述服務器端對應的多個客戶端;其中,每個所述客戶端包括待對比軟件版本庫,所述服務器端包括與所述待對比軟件版本庫對應的基準版本庫;
4、分別對所述服務器端的配置文件和所述基準版本庫的目錄進行配置;
5、分別對每個所述客戶端的配置文件和每個
6、利用所述服務器端對每個所述客戶端發(fā)送的報文信號進行周期性檢測,并根據檢測結果顯示與所述報文信號對應的信息和進行版本對比的名稱控件;
7、在顯示的每個所述客戶端的與所述報文信號對應的信息中選擇當前待對比軟件,并通過所述名稱控件向對應的客戶端發(fā)送版本信息對比命令;
8、利用所述客戶端接收所述版本信息對比命令,并計算所述當前待對比軟件的第一程序文件名稱集合和第一文件體特征碼集合之間的第一映射關系,及將所述第一映射關系組裝為版本信息對比反饋報文信號發(fā)送至所述服務器端;
9、利用所述服務器端接收所述版本信息對比反饋報文信號,并計算所述基準版本庫中與所述當前待對比軟件對應的基準軟件的第二程序文件名稱集合和第二文件體特征碼集合之間的第二映射關系;
10、利用所述服務器端對所述第一映射關系和所述第二映射關系進行對比,得到軟件版本的對比結果。
11、可選地,所述分別對所述服務器端的配置文件和所述基準版本庫的目錄進行配置包括在所述服務器端的配置文件中配置訂閱客戶端消息的第一組播地址、第一端口號、向客戶端發(fā)布命令的第二組播地址、第二端口號和所述服務器端所在計算機的第一本機網卡前綴;
12、將所述基準版本庫的目錄配置為所述操作系統(tǒng)的第一變量。
13、可選地,所述分別對每個所述客戶端的配置文件和每個客戶端目錄進行配置包括在每個客戶端的配置文件中配置客戶端名稱、訂閱服務器端消息的第三組播地址、第三端口號、向服務器端發(fā)送消息的第四組播地址、第四端口號、每個客戶端所在計算機的第二本機網卡前綴和每個客戶端的所述待對比軟件版本庫中的待對比軟件信息;
14、將每個所述客戶端的目錄配置為所述操作系統(tǒng)的第二變量。
15、可選地,所述第一組播地址的設置參數與所述第四組播地址的設置參數相同;
16、所述第一端口號的設置參數和所述第四端口號的設置參數相同;
17、所述第二組播地址的設置參數和所述第三組播地址的設置參數相同;
18、所述第二端口號的設置參數和所述第三端口號的設置參數相同。
19、可選地,所述與所述報文信號對應的信息包括客戶端信息和待對比軟件信息;其中所述客戶端信息包括客戶端的名稱和客戶端的互聯網協(xié)議地址;
20、所述待對比軟件信息包括待對比軟件的名稱和待對比軟件的工作目錄。
21、可選地,所述計算所述當前待對比軟件的第一程序文件名稱集合和第一文件體特征碼集合之間的第一映射關系包括獲取所述當前待對比軟件的工作目錄下的第一個程序文件;
22、解析所述第一個程序文件得到文件頭的長度;
23、根據所述文件頭的長度獲取文件體的數據;
24、根據所述文件體的數據得到文件體特征碼;
25、遍歷所述當前待對比軟件的工作目錄下的所有程序文件得到第一程序文件名稱集合和第一文件體特征碼集合;
26、根據所述第一程序文件名稱集合和所述第一文件體特征碼集合得到第一映射關系。
27、可選地,所述文件體特征碼為利用信息摘要算法得到的文件體特征碼。
28、可選地,所述計算所述基準版本庫中與所述當前待對比軟件對應的基準軟件的第二程序文件名稱集合和第二文件體特征碼集合之間的第二映射關系包括獲取與所述當前待對比軟件對應的基準軟件的工作目錄下的第一個程序文件;
29、解析所述第一個程序文件得到文件頭的長度;
30、根據所述文件頭的長度獲取文件體的數據;
31、根據所述文件體的數據得到文件體特征碼;
32、遍歷與所述當前待對比軟件對應的基準軟件的工作目錄下的所有程序文件得到第二程序文件名稱集合和第二文件體特征碼集合;
33、根據所述第二程序文件名稱集合和所述第二文件體特征碼集合得到第二映射關系。
34、可選地,所述利用所述服務器端對所述第一映射關系和所述第二映射關系進行對比包括利用所述服務器端對所述第一映射關系中的所有第一程序文件的名稱和所述第二映射關系中的所有第二程序文件的名稱進行對比;
35、利用所述服務器端對所述第一映射關系中的所有第一程序文件的個數和所述第二映射關系中的所有第二程序文件的個數進行對比;
36、利用所述服務器端對所述第一映射關系中的所有第一文件體特征碼和所述第二映射關系中的所有第二文件體特征碼進行對比。
37、本公開第二方面提供了一種軟件版本的對比系統(tǒng),該系統(tǒng)包括在同種操作系統(tǒng)中建立的服務器端以及與所述服務器端對應的多個客戶端;其中,每個所述客戶端包括待對比軟件版本庫,所述服務器端包括與所述待對比軟件版本庫對應的基準版本庫;
38、所述服務器端,用于分別對所述服務器端的配置文件和所述基準版本庫的目錄進行配置;
39、所述客戶端,用于分別對每個所述客戶端的配置文件和每個客戶端的目錄進行配置;
40、所述服務器端,還用于對每個所述客戶端發(fā)送的報文信號進行周期性檢測,并根據檢測結果顯示與所述報文信號對應的信息和進行版本對比的名稱控件;
41、所述服務器端,還用于響應于用戶對顯示的每個所述客戶端的與所述報文信號對應的信息中的操作選擇當前待對比軟件,并通過所述名稱控件向對應的客戶端發(fā)送版本信息對比命令;
42、所述客戶端,還用于接收本文檔來自技高網...
【技術保護點】
1.一種軟件版本的對比方法,其特征在于,該方法包括
2.根據權利要求1所述的軟件版本的對比方法,其特征在于,
3.根據權利要求2所述的軟件版本的對比方法,其特征在于,
4.根據權利要求3所述的軟件版本的對比方法,其特征在于,
5.根據權利要求4所述的軟件版本的對比方法,其特征在于,
6.根據權利要求5所述的軟件版本的對比方法,其特征在于,
7.根據權利要求6所述的軟件版本的對比方法,其特征在于,
8.根據權利要求7所述的軟件版本的對比方法,其特征在于,
9.根據權利要求8所述的軟件版本的對比方法,其特征在于,
10.一種軟件版本的對比系統(tǒng),其特征在于,該系統(tǒng)包括
【技術特征摘要】
1.一種軟件版本的對比方法,其特征在于,該方法包括
2.根據權利要求1所述的軟件版本的對比方法,其特征在于,
3.根據權利要求2所述的軟件版本的對比方法,其特征在于,
4.根據權利要求3所述的軟件版本的對比方法,其特征在于,
5.根據權利要求4所述的軟件版本的對比方法,其特征在于,
...【專利技術屬性】
技術研發(fā)人員:姜邵巍,張慶義,王成思,張文胤,
申請(專利權)人:北京電子工程總體研究所,
類型:發(fā)明
國別省市:
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。