freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

visualc瀏覽器的設(shè)計(jì)與實(shí)現(xiàn)-閱讀頁(yè)

2024-12-26 01:36本頁(yè)面
  

【正文】 種新的應(yīng)用程序類型還有許多其它的用途多的這里無(wú)法羅列。利用這個(gè)類,可以完成從銷售代表處遠(yuǎn)程更新公司數(shù)據(jù)庫(kù)到讓用戶易于登記產(chǎn)品之類的一切任務(wù)。 ActiveX 技術(shù) 要做一個(gè)好的瀏覽器,其中 Inter Explorer Active 模型很重要 , 目前 Inter( WEB)技術(shù)發(fā)展動(dòng)向,簡(jiǎn)略介紹了 Microsoft 提出的 ActiveX 技術(shù)的內(nèi)容,闡述了 ActiveX 技術(shù)與WEB 站點(diǎn)建設(shè)和桌面程序開(kāi)發(fā)的關(guān)系,以及利用 Visual C++和 Visual Basic 開(kāi)發(fā) ActiveX 部課件之家精心整理資料 歡迎你的欣賞 課件之家精心整理資料 歡迎你的欣賞 件的步驟和方法,并給出了在 WEB 網(wǎng)頁(yè)中使用 ActiveX 部件的例子。它與具體的編程語(yǔ)言無(wú)關(guān)。同時(shí), ActiveX 技術(shù)也被用于方便地創(chuàng)建普通的桌面應(yīng)用程序。其主要內(nèi)容是: ActiveX 控制( ActiveX Control);用于向 WEB 頁(yè)面、 Microsoft Word 等支持 ActiveX的容器( Container)中插入 COM 對(duì)象。 ActiveX 腳本描述( ActiveX Scripting);用于從客戶端或者服務(wù)器端操縱 ActiveX 控制和 Java 程序,傳遞數(shù)據(jù),協(xié)調(diào)它們之間的操作。 在 Inter Explorer 中內(nèi)置 Java 虛擬機(jī)( Java Virtual Machine),從而使 Java Applet 能夠在 Inter Explorer 上運(yùn)行,并可以與 ActiveX 控制通過(guò)腳本描述語(yǔ)言進(jìn)行通信。功能主要包括:①排版功能;②超文本鏈功能;③簡(jiǎn)單交互功能。 (2)、統(tǒng)一資源定位器 URL(Unit Resource Location):用對(duì)全球 Inter 服務(wù)器的共享訪問(wèn)資源進(jìn)行唯一標(biāo)識(shí)和定位。 HTTP 協(xié)議 HTTP 協(xié)議的工作機(jī)制 HTTP 的工作過(guò)程為典型的客戶 /服務(wù)器工作模式,客戶即為 WWW 瀏覽器,服務(wù)器即是 WWW 服務(wù)器。 HTTP 是面線連接的協(xié)議,通信開(kāi)始時(shí)會(huì)在客戶與服務(wù)器之間建立一條可靠的虛電路(virtual circuit),請(qǐng)求應(yīng)答完成后,即斷開(kāi)鏈路。 HTTP 的信 息傳輸方式 HTTP 具有兩種信息傳輸方式: ①、點(diǎn)對(duì)點(diǎn)方式,這顯然是最簡(jiǎn)單的傳輸方式,撥號(hào)上網(wǎng)用戶訪問(wèn)自己接入的 ISP 的WWW 服務(wù)器即為此種方式。 ②、借助中間服務(wù)的方式,即設(shè)定所謂中間服務(wù)器,或稱中繼結(jié)點(diǎn)。 URL 編碼和解碼 HTTP 協(xié)議存在的一個(gè)限制是 :在客戶機(jī)和服務(wù)器之間的命令、回應(yīng)、傳遞的數(shù)據(jù)都需要被明確的定義。 為解決這種問(wèn)題,就創(chuàng)建了 URL 編碼方案,每個(gè)空格都被轉(zhuǎn)換成 +來(lái)避免意義模糊。例如,字符串 Jason liu 被送 往服 務(wù)器 之前 ,先 被瀏 覽器 編碼 為 Jason %3E。 TCP/IP 協(xié)議 TCP/IP( Transmission Control Protocol/Inter Protocol),即傳輸控制協(xié)議 /網(wǎng)間協(xié)議 ,是一個(gè)工業(yè)標(biāo)準(zhǔn)的協(xié)議集 ,它是為廣域網(wǎng) (WANs)設(shè)計(jì)的。中文譯名為傳輸控制協(xié)議 /互聯(lián)網(wǎng)絡(luò)協(xié)議 眾所周知,如今電腦上因特網(wǎng)都要作 TCP/IP 協(xié)議設(shè)置,顯然該協(xié)議成了當(dāng)今地球村“人與人”之間的“牽手協(xié)議”。 下面采 用 TCP/IP 協(xié)議傳送文件為例,說(shuō)明 TCP/IP 的工作原理,其中應(yīng)用層傳輸文件采用文件傳輸協(xié)議( FTP)。 ●傳輸層將應(yīng)用層的數(shù)據(jù)流截成分組,并加上 TCP 報(bào)頭形成 TCP 段,送交網(wǎng)絡(luò)層。 課件之家精心整理資料 歡迎你的欣賞 課件之家精心整理資料 歡迎你的欣賞 ●鏈路層在其 MAC 幀的數(shù)據(jù)部分裝上 IP 數(shù)據(jù)包,再加上源、目的主機(jī)的 MAC 地址和幀頭,并根據(jù)其目的 MAC 地址,將 MAC 幀發(fā)往目的主機(jī)或 IP 路由器。 ●網(wǎng)絡(luò)層檢查 IP 報(bào)頭,如果報(bào)頭中校驗(yàn)和與計(jì)算結(jié)果不一致,則丟棄該 IP 數(shù)據(jù)包;若校驗(yàn)和與計(jì)算結(jié)果一致,則去掉 IP 報(bào)頭,將 TCP 段送交傳輸層。若正確,則向源主機(jī)發(fā)確認(rèn)信息;若不正確或丟包,則向源主機(jī)要求重發(fā)信息。這樣目的主機(jī)接收到的來(lái)自源主機(jī)的字節(jié)流,就像是直接接收來(lái)自源主機(jī) 的字節(jié)流一樣。 : Web 瀏覽器與 Web 服務(wù)器建立連接,打開(kāi)一個(gè)稱為 socket(套接字)的虛擬文件,此文件的建立標(biāo)志著連接建立成功。 HTTP 的請(qǐng)求一般是 GET 或POST 命令( POST 用于 FORM 參數(shù)的傳遞)。 : Web 瀏覽器提交請(qǐng)求后,通過(guò) HTTP 協(xié)議傳送給 Web 服務(wù)器。 例:假設(shè)客戶機(jī)與 :8080/mydir/ 建立了連接,就會(huì)發(fā) 送 GET 命令: GET /mydir/ HTTP/。如果找到該文件, Web 服務(wù)器把該文件內(nèi)容傳送給相應(yīng)的 Web 瀏覽器。 常用的 HTTP 頭信息有: ① HTTP 200 OK:這是 Web 服務(wù)器應(yīng)答的第一行,列出服務(wù)器正在運(yùn)行的 HTTP版本號(hào)和應(yīng)答代碼 。 ② MIME_Version::它指示 MIME 類型的版本。如:content_type:text/html,指示傳送的數(shù)據(jù)是 HTML 文檔。 :當(dāng)應(yīng)答結(jié)束后, Web 瀏覽器與 Web 服務(wù)器必須斷開(kāi),以保證其它 Web瀏覽器 能夠與 Web 服務(wù)器建立連接。 為了使設(shè)計(jì)瀏覽器的工作比較方便,微軟公司開(kāi)發(fā)設(shè)計(jì)了 Inter Explorer Active模型,它將 ActiveX 與 Inter Explorer 集成到一起作為一個(gè) Inter Explorer HTML 瀏覽器控件做一個(gè) ActiveX 文件服務(wù)運(yùn)行于應(yīng)用程序內(nèi)部,從而使應(yīng)用程序?qū)崿F(xiàn) Inter Exploeer 的全部功能。 Inter Explore HTML 瀏覽器封裝在 CHtmlView 類中,通過(guò)使用該類就可以輕松地創(chuàng)建出具有 WEB 瀏覽能力的應(yīng)用程序。 WebBrower 控件是客戶瀏覽網(wǎng)址以及本地文件系統(tǒng)和網(wǎng)絡(luò)文件夾的窗口。 課件之家精心整理資料 歡迎你的欣賞 課件之家精心整理資料 歡迎你的欣賞 第 3 章 系統(tǒng)需求分析 可行性研究 要開(kāi)發(fā)一個(gè)瀏覽器應(yīng)用程序,其工作量不僅和程序員本身的熟練程度,開(kāi)發(fā)水平有關(guān),而且與選擇的開(kāi)發(fā)語(yǔ)言、開(kāi)發(fā)方案有很大關(guān)系。 本應(yīng)用程序的開(kāi)發(fā)用的是 VC++的 MFC 集成開(kāi)發(fā)環(huán)境,開(kāi)發(fā)本程序的方案大概有如下三種: 利用 VC 開(kāi)發(fā)環(huán)境提供的 ActiveX 控件。 利用 VC 的 SOCKET 編程。 ( 2)、第二種方法使用 MFC 的 CHTMLView 類。有了這樣的框架以 后,具體程序的開(kāi)發(fā)就變得相對(duì)容易一些了。這樣開(kāi)發(fā)出來(lái)的應(yīng)用程序才可以在應(yīng)用方面顯出優(yōu)勢(shì)來(lái),比如可以使程序員更多的考慮如何使網(wǎng)頁(yè)的瀏覽更方便快捷,如何使應(yīng)用程序的運(yùn)行效率更高等等一些問(wèn)題,這些問(wèn)題的解決會(huì)使應(yīng)用程序更加完善。 ( 3)、第三種方法利用 SOCKET 編程加 VC 的 WinI API 編程實(shí)現(xiàn)。雖然可以利用 WinI 來(lái)實(shí)現(xiàn)頁(yè)面的下載,雖然 WinI API 對(duì) WINSOCK 進(jìn)行了再封裝,屏蔽了里面的許多細(xì)節(jié),但是還要求程序員對(duì)頁(yè)面的瀏覽進(jìn)行大量的處理工作,諸如對(duì)從服務(wù)器上得到的網(wǎng)頁(yè)源文件進(jìn)行處理,此處理包括網(wǎng)頁(yè)源文件的解析,圖像、文本、超鏈接的定位等等一些問(wèn)題。例如,如果發(fā)現(xiàn) HTML 頁(yè)面里有一個(gè) JPG 連接 , 就可以生成一個(gè) CJpg 的實(shí)例,在構(gòu)造函數(shù)里設(shè) 置好它的顯示坐標(biāo),ULR 等屬性,然后調(diào)用 CJpg::Display()。故而,這種方法對(duì)我們來(lái)說(shuō)也不是一個(gè)理想的選擇。以下的開(kāi)發(fā)設(shè)計(jì)流程就是基于第二種方案的設(shè)計(jì)流程。根據(jù)需求研究,得出一個(gè)較為完善的瀏覽器應(yīng)具備如下功能: 瀏覽功能 在 URL 框中輸入網(wǎng)址,敲回車(chē)鍵后,在顯示框中顯示網(wǎng)頁(yè),并在 Cache 文件夾中按網(wǎng)站的組織結(jié)構(gòu)保存網(wǎng)頁(yè)。當(dāng)需要查看曾經(jīng)瀏覽過(guò)的,下一個(gè)網(wǎng)頁(yè)時(shí),可以通過(guò)此功能,查看曾經(jīng)瀏覽過(guò)的下一個(gè)網(wǎng)頁(yè)。 后退功能 在瀏覽器的設(shè)計(jì)與開(kāi)發(fā)中,后退也同樣是一項(xiàng)常用的功能。 當(dāng)用戶點(diǎn)擊前進(jìn)按鈕時(shí),顯示下一個(gè)頁(yè)面,并在 URL 框中顯示當(dāng)前網(wǎng)頁(yè)地址。當(dāng)需要?jiǎng)h除正在打開(kāi)的網(wǎng)頁(yè)時(shí),可以通過(guò)此功能,刪除當(dāng)前正打開(kāi)的網(wǎng)頁(yè)。 刷新功能 在瀏覽器的設(shè)計(jì)與開(kāi)發(fā)中,刷新也同樣是一項(xiàng)常用的功能。在 用戶點(diǎn)擊刷新按鈕時(shí),重新顯示當(dāng)前頁(yè) 面,并在 Cache 文件夾中按網(wǎng)站的組織結(jié)構(gòu)保存網(wǎng)頁(yè)。這可以保護(hù)個(gè)人上網(wǎng)的隱私,提高上網(wǎng)的安全性。 禁止 網(wǎng)頁(yè) 彈出廣告窗口 禁止 網(wǎng)頁(yè) 彈出廣告窗口的設(shè)計(jì),可以阻止瀏覽網(wǎng)頁(yè)過(guò)程中的一些廣告 禁止瀏覽某些網(wǎng)站 網(wǎng) 絡(luò)上的資訊有好有壞,應(yīng)該采取措施,限制對(duì)某些網(wǎng)站的瀏覽。實(shí)現(xiàn)這項(xiàng)功能有兩種方法,一種是使用組策略,另一種是使用注冊(cè)表。 根據(jù)上述功能需求,畫(huà)出系統(tǒng)頂層數(shù)據(jù)流圖如下: 圖 頂層數(shù)據(jù)流圖 系統(tǒng) 1 級(jí)數(shù)據(jù)流圖如下: 圖 1級(jí)數(shù)據(jù)流圖 數(shù)據(jù)字典 : 統(tǒng)一資源定位符( URL) : 課件之家精心整理資料 歡迎你的欣賞 課件之家精心整理資料 歡迎你的欣賞 URL = + Host 字段 + / + ScriptName 字段 + / + PathInfo 字段 + Query 字段 Host 字段 : 標(biāo)識(shí) Web 服務(wù)器和 Web服務(wù)器應(yīng)用程序的主機(jī)名 ScriptName 字段 : 指定 Web 服務(wù)器應(yīng)用程序 PathInfo 字段 : 指出報(bào)文在 Web 服務(wù)器應(yīng)用程序內(nèi)的目標(biāo) Query 字段 : 部分包含一組命名的數(shù)據(jù)。如今瀏覽器已經(jīng)發(fā)展成可支持多種語(yǔ)言的系統(tǒng)軟件,并成為眾多網(wǎng)絡(luò)應(yīng)用系統(tǒng)的支撐平臺(tái)。 模塊劃分 軟件系統(tǒng)功能模塊的劃分標(biāo)準(zhǔn)及模塊間的耦合關(guān)系是軟件體系結(jié)構(gòu)的具體表現(xiàn)。根據(jù)超文本傳輸協(xié)議 HTML的 規(guī)范,一次 WEB頁(yè)面瀏覽操作可分成數(shù)據(jù)獲取、 HTML文件解釋、 WEB頁(yè)面顯示和人機(jī)交互四個(gè)子過(guò)程。 HTML語(yǔ)言解釋模塊功能 HTML語(yǔ)言是一種標(biāo)記性描述語(yǔ)言 ,HTML 文 件通過(guò)標(biāo)記及其屬性,將 WEB 頁(yè)面設(shè)計(jì)者的設(shè)計(jì)思想以純文本方式保存。 WEB 頁(yè)畫(huà)顯示模塊功能 WEB 頁(yè)面顯示模塊的功能是:計(jì)算數(shù)據(jù)對(duì)象(特別是表格中的數(shù)據(jù)元素)的顯示位置;顯示文本、圖像、語(yǔ)音數(shù)據(jù);調(diào)用 JVM(Java Virtual Machine)執(zhí)行 Java Applet 程序。 模塊間 的 接口 模塊之間接口的清晰性與合理性一定程度上決定了整個(gè)瀏覽器軟件的可靠性、健壯性和可實(shí)現(xiàn)性, 瀏覽器 通過(guò)消息機(jī)制和事件驅(qū)動(dòng)方式實(shí)現(xiàn)模塊之間的通信。 數(shù)據(jù)通信模塊與 HTML語(yǔ)言解釋模塊間的接口 數(shù)據(jù)通信 模塊取回 HTML 文件后,先保存該文件內(nèi)容、存儲(chǔ)數(shù)據(jù)塊的首地址和文件長(zhǎng)度,然后向 HTML 語(yǔ)言解釋模塊發(fā)消息。解釋模塊在解釋 HTML 文件過(guò)程中,如遇到 IMG、 A、 Applet之類的標(biāo)記,則新增一個(gè)數(shù)據(jù)通信線程去取資源文件。多個(gè)數(shù)據(jù)通信線程在后臺(tái)并發(fā)執(zhí)行(每個(gè)線程負(fù)責(zé)取一個(gè)資源文件),當(dāng)某個(gè)線程取回資源數(shù)據(jù),則向 WEB頁(yè)面 顯示模塊發(fā)消息,激活后者顯示已取回資源文件,然后本線程終止。首先,數(shù)據(jù)通信模塊需從人機(jī)交互模塊獲得目標(biāo)服務(wù)器的 URL 地址;其次,用戶在 WEB 瀏覽過(guò)程中,點(diǎn)擊超鏈接,人機(jī)交互模塊先獲得超鏈地址,然后申請(qǐng)一個(gè)數(shù)據(jù)通信線程取目標(biāo)文件;最后,執(zhí)行查詢、申請(qǐng)等 POST 操作時(shí),數(shù)據(jù)通信模塊負(fù)責(zé)將用戶數(shù)據(jù)發(fā)送到目標(biāo)服務(wù)器。 HTML 語(yǔ)言解釋模塊與 WEB 頁(yè)面顯示模塊間的接口 該接口在 5個(gè)接口中最為復(fù)雜,它直接反映了源 HTML 文件中的數(shù)據(jù)內(nèi)容解釋后以何種形式存在。 課件之家精心整理資料 歡迎你的欣賞 課件之家精心整理資料 歡迎你的欣賞 瀏覽器 系統(tǒng)設(shè)計(jì) 主框架的生成 最初通過(guò) MFC 的應(yīng)用程序向?qū)?chuàng)建一個(gè)單文本文檔的系統(tǒng)的主框架,視圖類的基類為 CHtmlView 類。當(dāng)應(yīng)用程序最初運(yùn)行時(shí)網(wǎng)址欄需要初始化,將上次瀏覽輸入的網(wǎng)址顯示出來(lái)。此外,網(wǎng)址欄還支持自動(dòng)記錄網(wǎng)址的功能。為此,專門(mén)編寫(xiě)了一個(gè)對(duì)注冊(cè) 表操作的類,具體的操作包括注冊(cè)表的打開(kāi)、注冊(cè)表的關(guān)閉、判斷注冊(cè)表的狀態(tài)、從注冊(cè)表中讀數(shù)據(jù)等等操作。 ②、處理地址條相應(yīng):當(dāng)用戶在地址欄輸入一個(gè)網(wǎng)址,點(diǎn)擊“轉(zhuǎn)到”按鈕(或者回車(chē)鍵)后,應(yīng)用程序會(huì)獲取輸入的網(wǎng)址信息,存入一個(gè)變量里,然后獲得當(dāng)前活動(dòng)視圖,利用其成員函數(shù)鏈接到網(wǎng)頁(yè)。這就實(shí)現(xiàn)了自動(dòng)記錄網(wǎng)址的功能。也就是說(shuō),當(dāng)頁(yè)面下載完以后, OnDocumentComplete()函數(shù)中的變量 lpszURL就保存了是完整有效的 URL 地址,我們可以用此 URL 地址取代輸入的網(wǎng)址,完成地址條的刷新。 首先需要在 ChtmlView 類中建立 OnDocumentComplete()函數(shù),可以使用 Class Wizard來(lái)添加該函數(shù)。 添加“功能選項(xiàng)菜單” 為了瀏覽網(wǎng)頁(yè)的方便,瀏覽器應(yīng)具有回到前一個(gè)頁(yè)面、到下一個(gè)頁(yè)面、刷新、回到主頁(yè)等功能,此菜單實(shí)現(xiàn)以上所述功能。利用 CHTMLVIEW類實(shí)現(xiàn)這些功能比較容 易,只需調(diào)用 CHTMLVIEW 類的一些成員函
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1