基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第1頁
基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第2頁
基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第3頁
基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第4頁
基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)畢業(yè)論文_第5頁
已閱讀5頁,還剩61頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、論文作者簽名:日期:基于CS模式下云打印系統(tǒng)的設計與實現(xiàn)版權聲明任何收存和保管本論文各種版本的單位和個人,未經(jīng)本論文作者同 意,不得將本論文轉(zhuǎn)借他人,亦不得隨意復制、抄錄、拍照或以任何方式 傳播。否則,引起有礙作者著作權之問題,將可能承擔法律責任。原創(chuàng)性聲明本人鄭重聲明:所呈交的學位論文,是本人在導師的指導下,獨立進 行研究工作所取得的成果。除文中己經(jīng)注明引用的內(nèi)容外,本論文不含任 何其他個人或集體己經(jīng)發(fā)表或撰寫過的作品或成果。對本文的研究做出重 要貢獻的個人和集體,均己在文中以明確方式標明,本聲明的法律結(jié)果由 本人承擔。摘要基于c/s模式下云打印系統(tǒng)的設計與實現(xiàn)F U(安康學院電子信息工程系

2、,陜西安康,725000)摘 要 隨著云”概念地引入,在對“云”概念理解基礎上,為了 解決傳統(tǒng)聯(lián)機打?。ňW(wǎng)絡共享打印)的不足之處,同時高效率地解決繁瑣的 打印任務,云打印地實現(xiàn)有著重要的意義。論文中研究基于C/S模式下系 統(tǒng)的設計與實現(xiàn),在數(shù)據(jù)收發(fā)基礎上了增加了客戶端對數(shù)據(jù)地加密和服務 器端對接收的文件,文件名稱和大小創(chuàng)建內(nèi)存映射表并排序輸出給打印機 的功能,以VC+6. 0為開發(fā)工具,采用Windows的核心編程技術內(nèi)存管理 和多線程操作對數(shù)據(jù)進行高效處理,在WindowsXp平臺完成云打印的功 能。為了確保數(shù)據(jù)安全完整和服務器高效地處理大量的數(shù)據(jù),著重研究了 網(wǎng)絡通訊的數(shù)據(jù)安全和內(nèi)存管理、

3、內(nèi)存映射技術。在檢測客戶端和云端服 務器數(shù)據(jù)是否有變更時,采用MD5技術生成服務器中存放文件的MD5摘 要和最新的客戶端測到得MD5摘要對比,確保數(shù)據(jù)完整。在服務器接收 大量數(shù)據(jù)的時候,對文件名和大小創(chuàng)建內(nèi)存映射表,然后通過對內(nèi)存地址 地訪問,來訪問數(shù)據(jù),實現(xiàn)了高效和快速處理數(shù)據(jù)的功能。經(jīng)測試,系統(tǒng) 運行正常、良好,能夠?qū)崿F(xiàn)云打印功能。關鍵詞C/S模式;數(shù)字簽名;內(nèi)存映射表AbstractKey WordsC/S mode; digital signature;Memory mapping tableDesign and Implementation of the Cloud print sy

4、stem based onC/S modeJING Qi(Department of Electronic and Information Engineering,AnkangUniversity, Ankang,725000)AbstractWith the introduction of the cloud consept,the implementation ofthe cloud piinting based on the understanding of the cloud concept lias ailimpoitant significance ,Which is used t

5、o solve the inadequacies of the thetraditional online printing (shared network piinting) and complicated printingtasks efficiently.The Paper design and mplementation of the cloud print systembased on C/S mode .It adds the function of the enciyption of the data by the clientand Creating a memory mapp

6、ing table output to the print queue based on thereceived text ,Which uses the VC十十6.0 as a tool and adopts Windows*s coreprogrammingtechnologyofmemorymanagementandmultithreadedoperation to deal with the data efficiently.lt complete cloud printing inWindowsXp platform.To ensure the security of data n

7、etwork communication and serversprocessing large amounts of data efficiently,the paper focuses on digital signaturetechnologyandthetechniquesofmemorymanagementandmemorymapping .When detecting whether the data of the client and the server changes ornot,it compares MD5 summaries used MD5 technology to

8、 generate files stored inthe server wite MD5 summaries measured by the latest client to ensure theintegrity of the data .when The server receives large amounts of data, it creates amemory mapping table on the file name and size .Then it obtains the data byvisiting the memory address,achieving the fu

9、nction of dealing with the dataquickly and efficiently. After testing, the system is operating normally and canachieve the function of cloud printing .目錄目錄1緒論.11.1課題背景與提出.11.2國內(nèi)外研究現(xiàn)狀.11.3研究的目的和意義.22系統(tǒng)可行性分析.32. 1技術可行性.32.1.1網(wǎng)絡通訊的設計原理.32.1.2客戶端機與服務器模型.52. 1. 3網(wǎng)絡通信的數(shù)據(jù)安全.62. 1.4內(nèi)存管理,內(nèi)存映射技術.82. 1.5虛擬打印技術

10、.82. 2操作可行性.92. 3經(jīng)濟可行性.92.4小結(jié).93系統(tǒng)分析與設計.103.1系統(tǒng)開發(fā)工具及簡介.103. 2系統(tǒng)總體框架.113.2.1設計流程圖.113.2.2系統(tǒng)類圖.123. 3功能模塊設計.133.3.1基本功能模塊.133.3.2服務器和客戶端時序圖.14(1)4小結(jié).164系統(tǒng)實現(xiàn).17(2)1系統(tǒng)開發(fā)環(huán)境.174.2系統(tǒng)各功能模塊的實現(xiàn).175系統(tǒng)測試.235.1系統(tǒng)測試目的與意義.235. 2測試過程.235. 3測試結(jié)果.255. 4問題及解決.26目錄6總結(jié)與展望.27參考文獻.29致謝.31摘要11緒論1 1課題背景與提出目前傳統(tǒng)的打印模式,基本處于人工管理

11、階段,缺乏有效的管理手段 和工具,造成打印資源浪費,而且對打印文件沒有進行必要的安全處理, 使打印機密泄漏。在如今這個信息化管理的時代,網(wǎng)絡調(diào)度打印是未來發(fā) 展的趨勢,因為它沒有地域的限制,不需要手持打印文件,去尋找打印終 端,只需要一款合適的軟件,就可以達到網(wǎng)絡傳輸文件給遠程打印終端實 現(xiàn)打印的目的,簡單安全,推動了打印行業(yè)的發(fā)展,符合了更多企業(yè)和部 門的打印要求。傳統(tǒng)的打印方式最直觀的打印方式就是打印共享。一臺打印機連接在 網(wǎng)絡上,單位有很多電腦都可以遠程操控打印機來打印文檔,但是假如現(xiàn) 在有急事,想要優(yōu)先打印,那么就得提升權限為單機共享,可是這樣妨礙 了別的人對打印機的使用,同時如果打印

12、任務龐大,會阻塞更多的等候打 印的任務。在短時間內(nèi)效率不高,使打印資源浪費。本文通過網(wǎng)絡調(diào)度打 印這種方式,來實現(xiàn)打印資源的合理分配,其次減少了大量的人為操作, 只需要通過客戶端對文件的提取和發(fā)送給遠程服務器,遠程服務器會自動 接收數(shù)據(jù),并通過短任務優(yōu)先算法,加入打印隊列等候打印機打印,為人 們今后的生活提供了更多便捷。1.2國內(nèi)外研究現(xiàn)狀2011年4月Google第一次對外宣布了云打印計劃,這一功能不但 可以讓遠程無線打印成為現(xiàn)實,更解決了手持設備打印不方便的問題,本 系統(tǒng)從中提取了 “云打印”的思想并總結(jié)了制作思路,為制作本軟件奠定 了基礎。截至今日,Chrome中的云打印己經(jīng)基本可用,而

13、另外一方面Google的合作伙伴HP也在今天隆重發(fā)布了全系列支持云打印的無線打印機,用 戶可以從Cr-48,移動版Gmail和Google Docs等支持云打印的應用中 直接打印到這些打印機上。當使用Google云打印進行打印時,文件會通過網(wǎng)絡安全地發(fā)送到的打 印機。由于打印工作是通過網(wǎng)絡進行的,因此無論與打印機的距離是遠是 近,Google云打印都能工作。無論用的是手機、傳統(tǒng)的臺式機還是介于 兩者之間的設備(如平板電腦),都可以使用Google云打印。借助云端打印機,能立即體驗谷歌云打印。由于云端打印機可以通過 家中或辦公室的無線網(wǎng)絡直接注冊谷歌云打印服務,因此能隨時使用。此 外,因為云端打

14、印機總是會連接到網(wǎng)絡,所以其驅(qū)動程序和固件無需的干 預即可更新至最新狀態(tài)。谷歌云打印還支持傳統(tǒng)的非云端打印機,因此可 以使用現(xiàn)有的任意打印機立即開始體驗。谷歌云打印是通過軟件實現(xiàn)與遠程打印服務器的連接,只要擁有打印 資源,安康學院畢業(yè)論文(設計)2便可以通過互聯(lián)網(wǎng)通訊實現(xiàn),手機或者PC客戶機軟件實現(xiàn)數(shù)據(jù)發(fā) 送給遠程云端打印,然而本文研究的是一種網(wǎng)絡數(shù)據(jù)傳輸打印,對于數(shù)據(jù) 的安全和數(shù)據(jù)的完整提供了更高的要求。1 3研究的目的和意義對于如今的很多大小型企業(yè)和學校甚至政府單位來說,如果遇到大量 的打印任務,那么對于傳統(tǒng)的打印方式來說,肯定會耗費大量的打印時間, 對于人力和財力無意是一種損耗。因為打印

15、資源有限,合理的分配打印資 源,如何讓打印資源充分利用是存在的問題;其次在時間上非正常的工作 時間,打印機沒有人為操作,就不能進行有效及時的打??;有時候打印的 數(shù)據(jù)在傳播過程中會造成不必要的損失甚至丟失,這樣打印就不能正常進 行,所以在保證數(shù)據(jù)完整和安全的前提下,對大量打印數(shù)據(jù)進行統(tǒng)一的管 理和無人值守操作的自動打印調(diào)度是完全符合廣大客戶的需求。通過網(wǎng)絡調(diào)度打印推動了信息化社會信息的快速交流,利用網(wǎng)絡傳輸 達到了快速、高效、安全,節(jié)省了人力、財力、物力,讓有限的打印資源 能夠合理充分使用的同時,提高了生產(chǎn)力,為更多的打印商提供了創(chuàng)造財 富的新途徑,足不出戶,就可以收到各地發(fā)來的打印訂單,第一時

16、間解決 客戶的打印問題,也創(chuàng)造了利益。其次對于各大企業(yè)和學校來說網(wǎng)絡調(diào)度 打印的實現(xiàn),解決了更多人為了爭奪優(yōu)先的打印資源,排隊等候,耗費大 量時間,對于緊急的打印任務不能及時打印造成不良的后果等諸多問題。網(wǎng)絡調(diào)度打印不僅僅是解決人們的打印問題,還可以對其功能的改進 和擴展,以適應更多類似的服務行業(yè),高效的解決顧客的需求。比如餐飲 業(yè),可以發(fā)展成為一個網(wǎng)絡調(diào)度訂餐系統(tǒng),這樣可以隨時隨地,解決客戶 的就餐問題;比如訂票問題,通過這個調(diào)度打印可以第一時間解決客戶的 乘車出行問題等等,也就是說,網(wǎng)絡調(diào)度打印它不僅僅是一個系統(tǒng)軟件, 不僅僅只針對打印問題,它是可以擴展和延伸地,對于各個行業(yè)都可以涉 及到

17、,對于今后很多問題都可以合理化解決,這就是本系統(tǒng)軟件最大的意 義之所在。2系統(tǒng)可行性分析2.1技術可行性2. 1. 1網(wǎng)絡通訊的設計原理TCP/IP是國際互聯(lián)網(wǎng)所釆用進行網(wǎng)際互連的通信協(xié)議。IP互連協(xié)議(Internet Protocol),負責主機之間的傳輸數(shù)據(jù)。TCP傳輸控制協(xié)議(TransmissionControl Piotocol),負責在應用程序之間傳遞數(shù)據(jù)。實際所 稱的TCP/IP協(xié)議包括系統(tǒng)可行性分析3了在國際互聯(lián)網(wǎng)上應用的一組協(xié)議,互聯(lián)網(wǎng)協(xié)議組 是此協(xié)議組的另一個名字。這個協(xié)議組包括幾種工作在不同層次上的網(wǎng)絡 協(xié)議,UDP用戶數(shù)據(jù)報協(xié)議(UseiDatagram Protoc

18、ol),提供給用戶進程 的無連接協(xié)議,也負責在應用程序之間無連接傳遞數(shù)據(jù), 但不執(zhí)行正確性 檢查。ICMP互連網(wǎng)控制報文協(xié)議(Internet ControlMessage Protocol),處 理主機間的差錯和傳送控制。ARP地址解析協(xié)議(AdchessResolution Protocol),負責將網(wǎng)絡層地址轉(zhuǎn)換成鏈路層地址。RARP反向地址解析協(xié) 議(Reverse Adckess Resohnion Protocol),負責將鏈路層地址轉(zhuǎn)換成網(wǎng)絡 層地址。TCP/IP協(xié)議的核心是傳輸層協(xié)議(TCP、UDP)、網(wǎng)絡層協(xié)議(IP)和物理接口層,這三層通常在操作系統(tǒng)的內(nèi)核中實現(xiàn)。TCP/I

19、P網(wǎng)絡環(huán)境下 的應用程序設計是通過網(wǎng)絡系統(tǒng)編程界面Socket實現(xiàn)的Socket提供應用 程序與系統(tǒng)內(nèi)核之間的網(wǎng)絡編程接口。協(xié)議可以是可靠的可以是不可靠 的??煽康膮f(xié)議意味著當數(shù)據(jù)通過協(xié)議傳遞時,協(xié)議保證數(shù)據(jù)正確傳輸。 可靠傳輸包括幾個特征。首先,為了確保數(shù)據(jù)正確傳送,協(xié)議在通信應用 程序之間互相交換確認信息。也就是說,程序每次發(fā)送一個報文時,都期 望對方發(fā)送確認信息。如果發(fā)送程序沒有收到這樣一個確認信息,程序?qū)?自動重新發(fā)送此報文,直到得到應答信息為止。其次,為了確保傳輸?shù)臄?shù) 據(jù)有效,可靠協(xié)議在每次傳輸時,都包含一個或更多的校驗和(CRC)。 接收計算機重新計算校驗碼,再與收到的校驗和進行比

20、較。如果不匹配, 就表明在傳輸過程中發(fā)生了錯誤。傳輸控制協(xié)議TCP是一個使用校驗和確認信息以及其它可靠數(shù)據(jù)傳 輸技術的可靠協(xié)議。相比之下,不可靠協(xié)議不能確保數(shù)據(jù)正確傳輸。協(xié)議 試圖傳輸數(shù)據(jù),但不保證成功。而且,不可靠協(xié)議在傳輸失敗后,并不通 知發(fā)送方??蓪⒉豢煽繑?shù)據(jù)傳輸比作沒有返回地址的信件。如果發(fā)送地址 是錯誤的,由于郵遞系統(tǒng)不能將信退回給,所以就不知道信件有沒有送到。 即使發(fā)送地址是正確的,也不能保證郵遞系統(tǒng)不丟失的信件。TCP /IP協(xié)議組中存在的兩個基本數(shù)據(jù)服務是:字節(jié)流服務和數(shù)據(jù)報 服務。使用字節(jié)流的協(xié)議將信息看作一串字節(jié)流進行傳輸。協(xié)議不管要求 發(fā)送或接收數(shù)據(jù)的長度和傳送數(shù)目,只是

21、將數(shù)據(jù)看作一個簡單的字節(jié)串 流。使用數(shù)據(jù)報的協(xié)議將信息視作一個獨立單元進行傳輸。協(xié)議單獨發(fā)一 個數(shù)據(jù)報,與此同時數(shù)據(jù)報之間不相互依賴。例如,假設使用字節(jié)流協(xié)議 發(fā)送5個數(shù)據(jù)段(每個有10字節(jié))和一個包含50字節(jié)的數(shù)據(jù)段(總共100字節(jié))。連接的接收方可以按每次20字節(jié)讀數(shù)據(jù)(要讀5次)。傳輸控制協(xié) 議是字節(jié)流協(xié)議。安康學院畢業(yè)論文(設計)4字節(jié)流協(xié)議不關心每個數(shù)據(jù)段的長度。如果應用程序使用字節(jié)流協(xié)議 發(fā)送數(shù)據(jù),則協(xié)議能夠保證連接的另一端按照發(fā)送的順序接收數(shù)據(jù)。相比 之下,傳輸?shù)酵荒康牡氐亩鄠€數(shù)據(jù)報可能不會按發(fā)送順序到達。如果接 收方應用程序要求數(shù)據(jù)順序一致,應用程序必須在數(shù)據(jù)到達后,校對這些

22、 數(shù)據(jù)。用戶數(shù)據(jù)報協(xié)議和互連網(wǎng)協(xié)議使用數(shù)據(jù)報傳輸數(shù)據(jù)。數(shù)據(jù)報類似于 信件。在TCP/IP術語中,端口(Port)類似于IP地址,IP地址與主機地址 是相聯(lián)系的,端口和協(xié)議相聯(lián)系。IP數(shù)據(jù)報保存目的和源IP地址,同樣 傳輸協(xié)議也保存源和目的端口號。Internet包括像FTP、Telnet和Mail這樣廣泛使用的應用程序釆用的 應用協(xié)議,在Internet上,這些應用程序使用一種叫做“通用口分配”的 端口。通用口分配是特定應用程序廣泛使用的一個協(xié)議端口。2】系統(tǒng)分析與設計52.1.2客戶端機與服務器模型(Client/Server或客戶/服務器模式):Client和Server常常分別處在相 距

23、很遠的兩臺計算機上,Client程序的任務是將用戶的要求提交給Server程序,再將Server程序返回的結(jié)果以特定的形式顯示給用戶;Server程序 的任務是接收客戶程序提出的服務請求,進行相應的處理,再將結(jié)果返回 給客戶程序。傳統(tǒng)的C/S體系結(jié)構雖然釆用的是開放模式,但這只是系統(tǒng)開發(fā)一級 的開放性, 在特定的應用中無論是Client端還是Server端都還需要特定的 軟件支持。由于沒能提供用戶真正期望的開放環(huán)境,C/S結(jié)構的軟件需要 針對不同的操作系統(tǒng)開發(fā)不同版本的軟件,加之產(chǎn)品的更新?lián)Q代十分快, 已經(jīng)很難適應百臺電腦以上局域網(wǎng)用戶同時使用。而且代價高,效率低。C/S結(jié)構的基本原則是將計算

24、機應用任務分解成多個子任務,由多臺 計算機分工完成,即釆用“功能分布”原則??蛻舳送瓿蓴?shù)據(jù)處理,數(shù)據(jù)表 示以及用戶接口功能;服務器端完成DBMS的核心功能。這種客戶請求服 務、服務器提供服務的處理方式是一種新型的計算機應用模式。C/S結(jié)構的優(yōu)點是能充分發(fā)揮客戶端PC的處理能力,很多工作可以 在客戶端處理后再提交給服務器。對應的優(yōu)點就是客戶端響應速度快。具 體表現(xiàn)在以下兩點:(1)應用服務器運行數(shù)據(jù)負荷較輕。最簡單的C/S體系結(jié)構的數(shù)據(jù)庫應 用由兩部分組成,即客戶應用程序和數(shù)據(jù)庫服務器程序。二者可分別稱為 前臺程序與后臺程序。運行數(shù)據(jù)庫服務器程序的機器,也稱為應用服務器。 一旦服務器程序被啟動,

25、就隨時等待響應客戶程序發(fā)來的請求;客戶應用 程序運行在用戶自己的電腦上,對應于數(shù)據(jù)庫服務器,可稱為客戶電腦, 當需要對數(shù)據(jù)庫中的數(shù)據(jù)進行任何操作時,客戶程序就自動地尋找服務器 程序,并向其發(fā)出請求,服務器程序根據(jù)預定的規(guī)則作出應答,送回結(jié)果, 應用服務器運行數(shù)據(jù)負荷較輕。(2)數(shù)據(jù)的儲存管理功能較為透明。在數(shù)據(jù)庫應用中,數(shù)據(jù)的儲存管理 功能,是由服務器程序和客戶應用程序分別獨立進行的,并且通常把那些 不同的前臺應用所不能違反的規(guī)則,在服務器程序中集中實現(xiàn),例如訪問 者的權限,編號可以重復、必須有客戶才能建立這樣的規(guī)則。2. 1.3網(wǎng)絡通信的數(shù)據(jù)安全(1)網(wǎng)絡通信的數(shù)據(jù)安全包括以下幾個方面:安康

26、學院畢業(yè)論文(設計)61)數(shù)據(jù)傳輸?shù)陌踩?,?shù)據(jù)傳輸?shù)陌踩允潜WC在公網(wǎng)上傳輸?shù)臄?shù)據(jù)不被第三方竊取。2)數(shù)據(jù)完整性對數(shù)據(jù)的完整性需求是指數(shù)據(jù)在傳輸過程中不被篡改。3)身份驗證在網(wǎng)上的通信雙方互不見面,必須在相互通信時確認對方的真實身份。4)不可抵賴性在網(wǎng)絡通信中開展業(yè)務的各方在進行數(shù)據(jù)傳輸時,必須帶有自身持有的、無法被別人復制的信息,以保證發(fā)生糾紛時有所對證。通常情況下,網(wǎng)絡通信中釆用的安全技術主要有防火墻技術、數(shù)據(jù)加 密技術和身份認證技術等。本文討論的重點是數(shù)據(jù)加密技術在網(wǎng)絡安全策 略中的應用。(2)數(shù)字指紋技術數(shù)字指紋是一種形象的說法,在密碼學上被稱為“信息摘要”。它是 通過安全的單向散列

27、函數(shù)作用于將要發(fā)送的信息上產(chǎn)生的:Message Digest =Secuie Hasli(message)單向散列函數(shù)有三個主要特點:1)它能處理任意大小的信息,并將其按信息摘要(Message Digesgt)方 法生成固定大小的數(shù)據(jù)塊,對同一個源數(shù)據(jù)反復執(zhí)行Secure Hash函數(shù)將 總是得到同樣的結(jié)果。2)它是不可預見的。產(chǎn)生的數(shù)據(jù)塊的大小與原始信息的大小沒有任何聯(lián)系,同時源數(shù)據(jù)和產(chǎn)生的數(shù)據(jù)塊看起來也沒有明顯關系,源信息的一個 微小的變化都會對小數(shù)據(jù)塊產(chǎn)生很大影響。3)它是完全不可逆的,沒有辦法通過生成的數(shù)據(jù)塊直接回復源數(shù)據(jù)。數(shù)字指紋技術不是一種加密機制,但卻能產(chǎn)生信息的數(shù)字“指紋”

28、,通過 驗證信息的“指紋”來確保數(shù)據(jù)沒有被修改或變化,保證信息的完整性不 被破壞。常用的信息摘要算法有:MD2、MD5和SHA-1等。3)數(shù)字簽名數(shù)字簽名是用來保證信息傳輸過程中信息的完整和提供信息發(fā)送者 的身份驗證和不可抵賴性的一種安全技術。系統(tǒng)可行性分析2. 1.4內(nèi)存管理,內(nèi)存映射技術內(nèi)存管理,是指軟件運行時對計算機內(nèi)存資源的分配和使用的技術。 其最主要的目的是如何高效,快速的分配,并且在適當?shù)臅r候釋放和回收 內(nèi)存資源。一個執(zhí)行中的程序,譬如網(wǎng)頁瀏覽器在個人電腦里將資料轉(zhuǎn)換 于真實世界及電腦內(nèi)存之間,然后將資料存于電腦內(nèi)存內(nèi)部的過程。內(nèi)存映射文件,是由一個文件到一塊內(nèi)存的映射。Win32

29、提供了允許 應用程序把文件映射到一個進程的函數(shù)(CieateFileMappmg)。內(nèi)存映射文 件與虛擬內(nèi)存有些類似,通過內(nèi)存映射文件可以保留一個地址空間的區(qū) 域,同時將物理存儲器提交給此區(qū)域,內(nèi)存文件映射的物理存儲器來自一 個己經(jīng)存在于磁盤上的文件,而且在對該文件進行操作之前必須首先對文 件進行映射。使用內(nèi)存映射文件處理存儲于磁盤上的文件時,將不必再對 文件執(zhí)行I/O操作,使得內(nèi)存映射文件在處理大數(shù)據(jù)量的文件時能起到相 當重要的作用。內(nèi)存映射文件與虛擬內(nèi)存有些類似,通過內(nèi)存映射文件可以保留一個 地址空間的區(qū)域,同時將物理存儲器提交給此區(qū)域,只是內(nèi)存文件映射的 物理存儲器來自一個已經(jīng)存在于磁盤

30、上的文件,而非系統(tǒng)的頁文件,而且 在對該文件進行操作之前必須首先對文件進行映射,就將整個文件從磁盤 加載到內(nèi)存。由此可以看出,使用內(nèi)存映射文件處理存儲于磁盤上的文件 時,將不必再對文件執(zhí)行I/O操作,這意味著在對文件進行處理時將不必 再為文件申請并分配緩存,所有的文件緩存操作均由系統(tǒng)直接管理,由于 取消了將文件數(shù)據(jù)加載到內(nèi)存、數(shù)據(jù)從內(nèi)存到文件的回寫以及釋放內(nèi)存塊 等步驟,使得內(nèi)存映射文件在處理大數(shù)據(jù)量的文件時能起到相當重要的作 用。另外,實際工程中的系統(tǒng)往往需要在多個進程之間共享數(shù)據(jù),如果數(shù) 據(jù)量小,處理方法是靈活多變的,如果共享數(shù)據(jù)容量巨大,那么就需要借 助于內(nèi)存映射文件來進行。實際上,內(nèi)存

31、映射文件正是解決本地多個進程 間數(shù)據(jù)共享的最有效方法。2. 1.5虛擬打印技術虛擬打印機,實際的打印驅(qū)動安裝在打印服務器端,將打印數(shù)據(jù)轉(zhuǎn)換 為版式文件或者其他指定格式的文件,實現(xiàn)監(jiān)控的目的是一個虛擬打印驅(qū) 動程序。這樣可以對每臺Client客戶機的所有應用程序都屏蔽除了虛擬打 印機以外的所有打印機,使打印數(shù)據(jù)必須經(jīng)過虛擬打印的打印機處理;最 后由虛擬打印機將打印數(shù)據(jù)轉(zhuǎn)發(fā)到真正的打印服務器完成打印任務。虛擬打印機,它是一種軟件,能模擬真實打印機的功能,打印文件。系統(tǒng)分析與設計9安裝完畢,打開“控制面板”中的“打印機和傳真”,會看到所安裝的虛 擬打印機,可以模擬真實的打印機環(huán)境。鼠標雙擊將其打開,

32、可以對其“打 印首選項”和“屬性”進行修改,從而設定是否共享、可使用時間、是否 后臺打印和優(yōu)先級,以及紙張大小、版式安排等。它們同樣能截獲所有Windows程序的打印操作,或模擬打印效果,或完成某一特殊功能。有些 軟件自帶虛擬打印機,有些則是專門的虛擬打印機,利用這些虛擬打印機, 可以幫助完成很多特殊的任務。虛擬打印機的打印文件是以某種特定的格 式保存在電腦上。2. 2操作可行性網(wǎng)絡調(diào)度打印軟件的可視化相當好,信息簡單明了,用戶操作簡單, 對操作人員的使用技術水平要求很低,幾乎無技術要求只需對操作系統(tǒng)使 用熟練,即可手工作操作。在操作技術上也具備可行性。與此同時每一個按鈕都有注明的文字,這對按

33、鈕的操作簡單明了,IP地址欄上面有注明的服務器IP地址和端口號,用戶只需要從客戶端手動 輸入IP地址和端口號就可以連接遠程服務器,不需要賬號和密碼,這在 一定程度降低了客戶的操作難度,而且服務器的自動調(diào)度減去了以往要手 動打開打印機,然后選擇要打印的文件,進而執(zhí)行打印操作,一連貫的繁 瑣操作,服務器會自動接收文件,對文件進行自動加入打印隊列,最后自 動調(diào)度打印機打印的,所以綜上所述操作具有可行性。2. 3經(jīng)濟可行性任何系統(tǒng)項目的開發(fā),都會受到資源和時間上的限制。因此,在每一 個項目開始開發(fā)之前,都要進行全面的具體的可行性分析,這樣可以最大 限度的減少項目開發(fā)風險,避免大量的人力、物力的浪費。在

34、當今的信息化高速發(fā)展時代,客戶端服務器管理模式可以滿足多樣 化的客戶需求,服務器工作統(tǒng)一化、快速化、整體化。這種模式相對提高 了打印的工作效率,提升了打印服務器端的經(jīng)濟效益,本系統(tǒng)軟件用C/S結(jié)構模式,客戶端對計算機配置的要求不高,低配置電腦也可以完全滿足 本系統(tǒng)的需求,滿足用戶的使用需要。同時,服務器在管理工作上的高效 率和便捷性遠遠超出了本系統(tǒng)所開發(fā)的成本,在經(jīng)濟方面具有可行性。2. 4小結(jié)本章主要課題背景和現(xiàn)狀,課題研究的目的和意義,并對課題工作做 出了規(guī)劃安排。最后簡要介紹了本課題開發(fā)所采用的相關工具和技術。系統(tǒng)分析與設計3系統(tǒng)分析與設計3.1系統(tǒng)開發(fā)工具及簡介(1)本系統(tǒng)服務器處理的

35、數(shù)據(jù)量大,對帶寬要求高,其次對于內(nèi)存和CUP性能要求高。(2) Visual C+6.0由Microsoft發(fā),它不僅是一個C+編譯器,而且 是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境(integrated developmentenvironment, IDE)o Visual C+6.0由許多組件組成,包括編 輯器、調(diào)試器以及程序向?qū)ppWizaid類向?qū)lass Wizard等開發(fā)工具。 這些組件通過一個名為Developer Studio的組件集成開發(fā)環(huán)境。Microsoft的主力軟件產(chǎn)品。Visual C十十是一個功能強大的可視化軟件開發(fā)工具。自1993年Microso

36、ft公司推出Visual C+1.0后,Visual C十十己成為專業(yè)程序員進行軟件開發(fā)的首選工具。Visual C+6.0以擁有“語法高亮”,自動編譯功能以及高級除錯功能而 著稱。比如,它允許用戶進行遠程調(diào)試,單步執(zhí)行等。還有允許用戶在調(diào) 試期間重新編譯被修改的代碼,而不必重新啟動正在調(diào)試的程序。其編譯 及創(chuàng)建預編譯頭文件(stdafx.h)、最小重建功能及累加連結(jié)。Developer Studio是一個集成開發(fā)環(huán)境,日常工作的99%都是在它上 面完成的。雖然Developer Studio提供了一個很好的編輯器和很多Wizard,但實際上它沒有任何編譯和鏈接程序的功能oDeveloper

37、Studio并不是專門 用于VC的,它也同樣用于VB, VJ, VID等。Platform SDK是Visual C十十和整個Visual Studio的核心功能,PlatformSDK是以Microsoft C/C+編譯器為核心,配合MASM,輔以其他一些工 具和文檔資料。Developer Studio沒有編譯程序的功能,CL、NMAKE和 其他許多的命令行程序,是構成Visual Studio的基石。結(jié)論:通過VC6.0豐富多彩的功能完全有能力在Windows平臺設上 設計出符合要求的軟件。系統(tǒng)分析與設計113.2系統(tǒng)總體框架(1)1設計流程圖根據(jù)客戶的實際情況,為了能夠盡量滿足各種用戶

38、需求,在進行基于 客戶端服務器的網(wǎng)絡調(diào)度打印系統(tǒng)的技術方案設計時,釆用C/S模式來進 行設計。根據(jù)客戶端和服務器結(jié)構的要求,系統(tǒng)平臺共分成2部分:客戶 端、服務器??蛻舳艘獔?zhí)行以下幾個步驟:1初始化Socket2讀取端口號和IP地址3與服務器建立連接4載入本地打印數(shù)據(jù)5對數(shù)據(jù)進行MD5數(shù)據(jù)加密6發(fā)送文件到指定端口服務器。服務器主要負責對數(shù)據(jù)的接收、校驗、 輸出提交給打印機服務器端執(zhí)行以下幾步驟:5初始化Socket6綁定端口和IP地址7創(chuàng)建端口偵聽,啟動多線程循環(huán)監(jiān)聽鏈接8接收數(shù)據(jù)9對數(shù)據(jù)進行校驗,確保數(shù)據(jù)是否完整系統(tǒng)分析與設計1210如果數(shù)據(jù)不完整,丟棄并添加日志安康學院畢業(yè)論文(設計)3.

39、2.2系統(tǒng)類圖CtanSockotM plrid 口 i I 1 srBulfcrUnbArropl Cl unSnckot().-OnScndO -0nCIcO -OnRcccivcO -SvtUi-M!uiKrFnrn() -GclMcsxSlrO SendStrO圖3.2系統(tǒng)類圖CLANServerClientApp繼承CWinApp實現(xiàn)Windows操作系統(tǒng)的應用程序的初始化、運行和終止。CAboutDlg繼承CDialog用戶在屏幕上顯示的對話框。也就是初始 化定義了一些提示對話框。如服務器啟動按鈕其中DoDataExchang實現(xiàn)主 對話框和提示對話框的交互。CLANServerC

40、lientDlg繼承CDialog在屏幕上顯示的對話框(主對 話框),該類為主類調(diào)用CLanSocketClient類實例實現(xiàn)客戶端操作;調(diào)用CLanSocketSeiver實例實現(xiàn)服務器端操作。ClanSocket類繼承CAsycSocket, CLanSocketClient調(diào)用該類方法,為客戶端操作提供服務CLanSocketClient類繼承CAsycSocket實現(xiàn)客戶端的操作,客戶端 可以有多個實例6.CLanSocketServer類繼承CAsycSocket實現(xiàn)服務器端操 作,服務器端只有一個,用多線程監(jiān)聽管理客戶端。| CWIrappCAsyncSockerClanSocke

41、tCIfentaOnCliont 08CnSn)oeryl)n)glconSOnSy 5Cx)nfwmdOSlJiiPaint 11MXiQjoryDrAUonOClanSockotSrrcrii pAndSn.tKorilBCnbConnccxod5n_zKur!rr *nrYMnSockzC】 ioni ()-VlrtSockctCI irnt 0 S服務器未啟動或網(wǎng)絡錯誤每一秒鐘嘗試連接一次-文件不可打卬車新載入文件亠_對文件 MD5 加密發(fā)送加密文件打印完成點擊停止諸求關閉連接關閉連接諸求建立連接_ 初始化 SocketI戦入本地打印文件系統(tǒng)分析與設計15(2)服務器端的時序圖安康學院

42、畢業(yè)論文(設計)16圖3.4描述了從服務器端接收數(shù)據(jù)的過程,服務器循環(huán)監(jiān)聽,如有客 戶端請求連接,那么服務器端相應后,會對接收到的密文件進行分析,查 看數(shù)據(jù)是否完整,如果數(shù)據(jù)不完整,丟棄并添加日志文件,這部分在DEBUG過程中完成,最后如果數(shù)據(jù)校驗成功那么對所有接收到的數(shù)據(jù)進 行文件名和大小創(chuàng)建內(nèi)存映射表,然后排序輸出個打印隊列,最后由打印 機自動完成打印任務。安康學院畢業(yè)論文(設計)173.4小結(jié)本章主要對系統(tǒng)總體框架進行了設計,再根據(jù)系統(tǒng)框架和具體功能設 計了類圖。在設計流程圖設計好后又設計流程圖實現(xiàn)的功能進行了細化, 即將各個模塊的功能具體到每一個類中,實現(xiàn)了主要類的設計工作。最后 畫出

43、了服務器端和客戶端的順序圖,為系統(tǒng)的實現(xiàn)提供依據(jù)。系統(tǒng)實現(xiàn)4系統(tǒng)實現(xiàn)4.1系統(tǒng)開發(fā)環(huán)境應用客戶端:應用程序:客戶端開發(fā)語言:C+操作系統(tǒng):Windows XP編譯器:VC十十應用服務器:應用程序:服務器操作系統(tǒng):Windows XPCPU:四核以上內(nèi)存:4GB以上4 2系統(tǒng)各功能模塊的實現(xiàn)(1)客戶端在數(shù)據(jù)收發(fā)過程中,主要功能的實現(xiàn) 關鍵代碼實現(xiàn):void CLANSeiveiClientDlg:OnClient()/ TODO: Add your control notification handler code here m_Type = 1;m_IP.EnableWindow(TRUE)

44、;GetDlgItem(IDC_START_LINK)-SetWindowText(n連接”);(AfxGetMainWnd()-SetWindowText(n客戶機”);LRESULT CLANServerClientDlg:NETMessage(WPARAMLPARAM IParam)CString str;switch(wPaiam)case CLIENTREAD:sti = m_SocketClient.GetMessStr(); m_Info = str;break;case CLIENTSEND:break;wParam,安康學院畢業(yè)論文(設計)18case CONNECT:m_I

45、nfo = B連接上服務器!”;break;case SERVERCLOSE:m_Info = 服務器己關閉”;break;case SERVERREAD:str = m_SocketSeiver.GetMessSti();m_Info = str;break;case SERVERSEND:break;case ACCEPT:KillTimei(2);m_Info =nB接受客戶機請求!“;break;case CLIENTCLOSE:m_Info =”客戶機己關閉”;break;UpdateData(false);retuin TRUE;客戶端對數(shù)據(jù)加密功能的實現(xiàn)關鍵代碼:服務器界面主要有

46、: 服務器綁定IP地址欄、 固定端口號、 啟動服務 器按鈕。數(shù)字簽名確保文件傳輸安全同時按大小排序輸出給打印機:const unsigned char MD5:PADDING64=0 x80;MD5:MD5()state0=0 x67452301;statel=0 xEFCDAB89;state2=0 x98BADCFE;state3=0 xl0325476;MD5二MD5()系統(tǒng)實現(xiàn)19bool MD5:setMessage(const char * llis) string tem(llis);data = tem;state0=0 x67452301; statel=0 xEFCDAB8

47、9; state2=0 x98BADCFE;state3=0 xl0325476;return true;bool MD5:setMessage(const std:string &lhs) data = lhs;state0=0 x67452301; statel=0 xEFCDAB89; state2=0 x98BADCFE;state3=0 xl0325476;return true;MD5:MD5(const char *lhs) string tem(llis); data = tem; state0=0 x67452301;statel=0 xEFCDAB89; state

48、2=0 x98BADCFE; state3=0 xl0325476;MD5:MD5(const std:stiing &lhs) data = lhs; state0=0 x67452301;statel=0 xEFCDAB89; state2=0 x98BADCFE;state3=0 xl0325476;string MD5:Padding()/paddingstring tem;tem = data;unsigned int PaddingLen;union struct UINT4 MessageLen,_;unsigned chai messageLen9;message;me

49、ssage._ = 0;message.MessageLen = tem.length()十8;PaddingLen = message.MessageLen & 0 x3f;PaddingLen = 64 - PaddingLen;message.MessageLen -= 8;安康學院畢業(yè)論文(設計)20message.MessageLen *= 8;tem.append(const char *)PADDING,PaddingLen);tem.append(const char *)message.messageLen,8); return tem;服務器在數(shù)據(jù)接收過程中主要功能

50、的實現(xiàn):關鍵代碼實現(xiàn):void CLANSeiveiClientDlg:OnServer()/ TODO: Add your control notification handler code here m_Type = 0;m_IP.EnableWindow(FALSE);GetDlgItem(IDC_START_LINK)-SetWindowText(,啟動”);(AfxGetMainWnd()-SetWindowText(n服務器”);void CLANSeiveiClientDlg:OnStartLink()/ TODO: Add your control notification h

51、andler code here UpdateData();if( !m_Type )if(m_SocketServei.m_hSocket = INVA.LID_SOCKET)BOOL bFlag = m_SocketServer.Create(m_Port,SOCK_STREAM, FD_ACCEPT);if(! bFlag)MessageBox(H網(wǎng)絡建立錯誤!“);m_SocketServei.Close();return;MessageBox(”服務己啟動!”);“偵聽”成功,等待連接請求if(! m_SocketSeiver.Listen( 1)int nErroiCode = m

52、_SocketServer.GetLastEnor();if(nEirorCode = WSAEWOULDBLOCK)系統(tǒng)實現(xiàn)21MessageBox(網(wǎng)絡偵聽錯誤!);m_SocketServei.Close();return;elseBYTE al,a2,a3,a4;m_IP.GetAddress(al,a2,a3,a4);m_ServeiAdr.Format(,%d.%d.%d.%d,al,a2,a3,a4);m_SocketClient.SliutDown(2); m_SocketClient.Rest();建立計時器,每1秒嘗試連接一次,直到連上或TiyCoimt10SetTimer

53、( 1,500,NULL);TryCount=0;安康學院畢業(yè)論文(設計)225系統(tǒng)測試5.1系統(tǒng)測試目的與意義系統(tǒng)測試是軟件研發(fā)過程中必不可少的一個部分。主要性體現(xiàn)在于它 是能夠保證整個系統(tǒng)可靠的穩(wěn)定的重要過程,也是對整個系統(tǒng)開發(fā)過程中 包括系統(tǒng)分析、系統(tǒng)設計和系統(tǒng)實現(xiàn)的最終審查的一個必不可少的過程。系統(tǒng)測試就就是尋找問題的過程,在實際測試過程中會遇到大大小小 的問題,對于這些問題的解決和修復將更好的服務于客戶。測試一旦遇到問題,那么要及時的經(jīng)過BUG調(diào)試找出錯誤位置和原 因,然后進行修正,直到真正能夠正常運行為止。這是計算機信息系統(tǒng)整 體要求進行的穩(wěn)定性測試,系統(tǒng)測試是正對整個計算機信息系

54、統(tǒng)進行的綜 合性測試,目的是能夠驗證系統(tǒng)在滿足了用戶的需求,同時保證系統(tǒng)的可 靠性和穩(wěn)定性,解決系統(tǒng)存在的不足之處。5. 2測試過程軟件開發(fā)完成之后,還要進行整體系統(tǒng)測試。單獨對系統(tǒng)的測試主要從以下幾個方面:功能測試:測試是否滿足開發(fā)要求,是否完成開題報告所描述的功 能要求,是否滿足用戶的需求。功能測試是系統(tǒng)測試最常用和必須的測試。強度測試及性能測試:測試系統(tǒng)能力最高實際限度,即軟件在一些 超負荷運行情況下系統(tǒng)功能實現(xiàn)的情況。經(jīng)過上述的測試過程,對系統(tǒng)進行測試后,只有測試結(jié)果能夠滿足 系統(tǒng)開發(fā)的要求,測試才宣告結(jié)束,系統(tǒng)算開發(fā)完成。在在實驗中門用虛擬打印機來完成實驗操作步驟, 第一步打開虛擬打

55、 印機,初始狀態(tài)如圖:圖5.1虛擬機打開初始狀態(tài)圖第二步:打開服務器,并啟動服務器實施監(jiān)控,如圖:系統(tǒng)測試23圖5.2服務器啟動狀態(tài)圖第三步:打開本地客戶端,然后連接服務器,并發(fā)送打印數(shù)據(jù)。圖5.3客戶端鏈接并發(fā)送數(shù)據(jù)成功狀態(tài)圖圖5.4服務器成功接收數(shù)據(jù)狀態(tài)圖第四步:點擊遠程打印按鈕,選擇要傳輸打印的文件,然后查看虛擬 打印機的狀態(tài)。安康學院畢業(yè)論文(設計)245. 3測試結(jié)果在測試的第二步中服務器啟動成功,通過netstat-an命令查看端口號 狀態(tài):現(xiàn)在端口號處于LISTENING監(jiān)聽狀態(tài),說明測試過程中服務器啟 動成功。ProtoLocal AddressForeign AddressS

56、tateTCP:13:0LISTENINGTCP:44:0LISTENINGTCP:1000:0LISTENING圖5.5服務器端I狀態(tài)圖在測試第三步中客戶端連接服務器成功,通過netstat -an命令查看客 戶端端口和服務器IP地址狀態(tài):現(xiàn)在客戶端端口號和本地IP地址與遠程 服務器IP地址和端口號處于ESTABLISHED建立連接狀態(tài),說明客戶端 連接成功了。TCP:103:0LISTENINGTCP:300812?.0.0.1:10001ESTAB

57、LISHEDTCP:10001:3008ESTABLISHED圖5.6端II服務器端1丨狀態(tài)圖在最后一步測試過程中查看虛擬打印機的狀態(tài):說明要的打印的任務 己經(jīng)被服務器自動加入打印隊列中,云打印的功能己經(jīng)實現(xiàn)。聖聖pdfFactory Pro口問岡打印機Q)文檔功 查看電)幫助Qf)文檔名狀態(tài)所有者回C:Documents and Settings.己發(fā)送到打印機Administrator刮D:井齊畢業(yè)論文初稿doc已發(fā)送到打印機Administrator圖5.7虛擬打印機狀態(tài)圖安康學院畢業(yè)論文(設計)255. 4問題及解決服務端啟動失敗啟動服務端時提示錯誤

58、,如下圖所示:圖5. 8Socket異常圖經(jīng)檢查進程列表,原來是之前運行服務端軟件未正常退出,進程中有 殘留,關掉該進程后啟動成功。多個服務器啟動時候提示錯誤,如下圖所示:圖5. 9進程異常圖打印機啟動失敗對于pdf虛擬打印機,啟動失敗。通過設置默認 打印機來解決??蛻舳诉B接服務端報錯通過修改客戶端端口為服務端偵聽端口來 解決。6總結(jié)與展望總結(jié)與展望26針對當今社會傳統(tǒng)打印存在的問題,這款軟件提供了良好的解決方 案。通過測試證明,該軟件能實現(xiàn)針對用戶和打印任務進行有效的監(jiān)控, 為廣大用戶的打印資源進行了管理,提供了方便快捷的途徑。當然軟件本 身還不夠完善,比如在客戶端應該添加VIP和普通客戶登

59、錄的選項,在服 務器端對打印頁數(shù)統(tǒng)計地功能,服務器對VIP客戶選擇更靈活的打印方法 等等,還需要一個改進的過程,以后有機會會繼續(xù)完善它。對于未來的打印要求,還可以向商業(yè)化發(fā)展,把這個款軟件完善其功 能,使其具有客戶注冊登錄功能,其次對打印的頁數(shù)做計費操作,另外對 于某些對打印要求比較緊急的文件,將釆用更靈活的調(diào)度算法,不再是簡 單的先來先服務或者短作業(yè)優(yōu)先算法,提高打印客戶的打印權限,使他們 第一個享受打印優(yōu)先權,這樣就可以更合理很人性的解決實際中的打印問 題。參考文獻29參考文獻華軍資訊.EB/OL Paul R.Allen. Vc+十Unleashed.SAMSi2002【336-4574

60、ea2b76e2c7-Numbered_cd3eb080-12a3-43d5-87aa-526b3283cb陳國建,楊國祥.Visual C+范例開發(fā)大全M.清華大學出版社,20104ea2b76e2c7-Numbered_cd3eb080-12a3-43d5-87aa-526b3283cbRichard.JolinsonbaughMaitinKaliii.The C+ Piograming LanguageM.中國電力出版社,20124ea2b76e2c7-Numbered_cd3eb080-12a3-43d5-87aa-526b3283cbH.M.DeitelP.J.Deitel.Thinking in C+M.電子工業(yè)出版社,20114ea2b

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論