版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
HTTP協(xié)議及高級編程簡要介紹HTTP協(xié)議。介紹MFC中的CHtmlView類。使用CHtmlView類,創(chuàng)建一個Web流覽器型的應用程式。
9.1HTTP協(xié)議
HTTP是超文本傳輸協(xié)議(HypertextTransferProtocol)的簡稱,HTTP協(xié)議也是基於TCP/IP的客戶/伺服器協(xié)議。
1990年,在萬維網(wǎng)應用的開發(fā)中,為了解決HTML文檔在網(wǎng)上的傳輸問題,誕生了HTTP協(xié)議。至今已有了三個版本,HTTP0.9,HTTP1.0以及HTTP1.1。為了適應下一代的因特網(wǎng),還出現(xiàn)了HTTPng。事實證明,HTTP比以前的任何一種協(xié)議都簡單有效,能將資訊很好地組織起來,讓人們方便地、直接地從Internet上檢索和獲取所需的資訊。
9.1.1HTTP的基本概念
RFC2068是HTTP1.1的最新的詳細描述,本節(jié)介紹HTTP的基本概念。
圖9.1HTTP的會話過程
HTTP的會話週期由連接、請求、回應和斷開4個階段組成:
(1)建立TCP/IP連接(TCP/IPconnection)(2)Web客戶向伺服器發(fā)送HTTP請求(HTTPrequest)(3)伺服器向客戶回送HTTP回應(HTTPresponse)(4)斷開TCP/IP連接(disconnection)
HTTP協(xié)議就是規(guī)定了Web客戶和服務器之間的資訊交換規(guī)程,以及HTTP請求和HTTP回應消息的內(nèi)容和格式。
HTTP協(xié)議應在Web流覽器和Web伺服器中實現(xiàn)。換句話說,Web流覽器和Web伺服器應按照HTTP協(xié)議交換資訊。至於HTTP消息的一般格式等具體細節(jié),讀者可查閱相關資料。
9.1.2HTTP協(xié)議的應用
HTTP協(xié)議對編程有什麼用?能夠?qū)崿F(xiàn)什麼樣實用的程式?這些問題使我們不得不回到HTTP的本質(zhì)。超文本傳輸協(xié)議,主要是用於傳輸檔的協(xié)議。雖然RFC2068對HTTP協(xié)議描述早就超出了檔傳輸?shù)墓爣5莻鬏敊n的作用還是最主要的。在這裏我們提出幾個問題,這些問題都可以使用HTTP協(xié)議編程實現(xiàn)。比如
:u
基於HTTP的檔中斷點續(xù)傳的程式u
使用代理伺服器下載的程式u
Web伺服器程式u
能夠通過身份認證而下載檔的程式u
接受流覽器網(wǎng)頁上載檔的程式這些功能的實現(xiàn)都要求用戶對HTTP比較瞭解。
9.2利用CHtmlView類創(chuàng)建Web流覽器型的應用程式9.2.1CHtmlView類與WebBrowser控件
CHtmlView類在afxhtml.h包含檔中定義,是從CView派生的,如圖9.2所示。在標準的MFC框架應用程式中,無論是基於SDI或MDI的,所有從CView派生的類,都提供了由CView提供的功能。
圖9.2CHtmlView類的繼承關係
CHtmlView類的主要功能是訪問Web網(wǎng)站和HTML文檔。這是由於CHtmlView類在MFC的文檔/視圖結(jié)構(gòu)(MFC'sdocument/viewarchitecture)環(huán)境中,進一步提供了WebBrowser控件的功能,可以說CHtmlView類是對WebBrowser控件的封裝。
WebBrowser控件支持通過超鏈接和統(tǒng)一資源定位器URL導航的Web流覽。使得應用程式成了一個Web流覽器(webbrowser)。要創(chuàng)建一個Web流覽器型的應用程式,可以使用CHtmlView類。通過MFC應用程式嚮導實現(xiàn)。
9.2.2CHtmlView類的成員函數(shù)1.獲取和設置屬性(Attributes)的成員函數(shù)(1)CStringGetType()const;(2)longGetLeft()const;voidSetLeft(longnNewValue);(3)longGetTop()const;voidSetTop(longnNewValue);(4)longGetHeight()const;voidSetHeight(longnNewValue);(5)BOOLGetVisible()const;voidSetVisible(BOOLbNewValue);
其他的函數(shù)就不一一列舉了。
2.主要的操作(Operations)成員函數(shù)這些成員函數(shù)非常有用,常常用在應用程式中。voidGoBack();導航到歷史列表的前一個條目(previousitem)。voidGoForward();導航到歷史列表的下一個條目。voidGoHome();導航到主頁,該主頁在IE的屬性中設置。voidGoSearch();導航到當前搜索頁。該頁在IE的屬性中設置。voidRefresh();重新裝入流覽器當前正在顯示的URL或者檔,即刷新。voidStop();撤銷任何未完成的導航或下載,並且停止任何動態(tài)的頁面元素,例如背景音樂和動畫。
Navigate導航到由URL指定的資源。Navigate2導航到由URL指定的資源或者由全路徑指定的檔。PutProperty設置與所給定的對象相關的屬性的當前值。GetProperty返回與所給定的對象相關的屬性的當前值。ExecWB執(zhí)行一個命令。LoadFromResource 在WebBrowser控件中裝入一個資源。
後面的六個函數(shù)的調(diào)用格式比較複雜,下麵分別敘述。(1)第一種格式的導航函數(shù)調(diào)用這個成員函數(shù),導航到由URL指定的資源,或者由一個完全的路徑指定的檔。voidNavigate(LPCTSTRURL,DWORDdwFlags=0,LPCTSTRlpszTargetFrameName=NULL,LPCTSTRlpszHeaders=NULL,LPVOIDlpvPostData=NULL,DWORDdwPostDataLen=0);
(2)第二種格式的導航函數(shù)Navigate2
調(diào)用這個成員函數(shù),導航到由URL指定的資源,或者由一個完全的路徑指定的檔。函數(shù)通過支持特定檔夾的流覽,諸如,Desktop和MyComputer,擴展了Navigate成員函數(shù)的功能,它們由參數(shù)pIDL指定。函數(shù)有三種重載的形式,參數(shù)有所不同。voidNavigate2(LPITEMIDLISTpIDL,DWORDdwFlags=0,LPCTSTRlpszTargetFrameName=NULL);
voidNavigate2(LPCTSTRlpszURL,DWORDdwFlags=0,LPCTSTRlpszTargetFrameName=NULL,LPCTSTRlpszHeaders=NULL,LPVOIDlpvPostData=NULL,DWORDdwPostDataLen=0);
voidNavigate2(LPCTSTRlpszURL,DWORDdwFlags,CByteArray&baPostedData,LPCTSTRlpszTargetFrameName=NULL,LPCTSTRlpszHeader=NULL);
(3)設置屬性的成員函數(shù)設置一個給定對象相關的屬性。有多種重載的形式,參數(shù)不同。voidPutProperty(LPCTSTRlpszProperty,constVARIANT&vtValue);voidPutProperty(LPCTSTRlpszPropertyName,doubledValue);voidPutProperty(LPCTSTRlpszPropertyName,longlValue);voidPutProperty(LPCTSTRlpszPropertyName,LPCTSTRlpszValue);voidPutProperty(LPCTSTRlpszPropertyName,shortnValue);
(4)獲得屬性得到與控件相關的屬性值,有兩種重載的形式。BOOLGetProperty(LPCTSTRlpszProperty,CString&strValue);COleVariantGetProperty(LPCTSTRlpsz);
前者返回非零,表示成功完成,否則返回0,後者返回COleVariant對象。
(5)執(zhí)行命令ExecWB
調(diào)用這個成員函數(shù)來在流覽器控件中或IE中執(zhí)行一個命令。voidExecWB(OLECMDIDcmdID,OLECMDEXECOPTcmdexecopt,VARIANT*pvaIn,VARIANT*pvaOut);
(6)裝入資源調(diào)用此成員函數(shù)來將指定的資源裝入流覽器控件,有兩種形式。BOOLLoadFromResource(LPCTSTRlpszResource);BOOLLoadFromResource(UINTnRes);
3.事件(Events)處理函數(shù)為了利用Windows的消息驅(qū)動機制,CHtmlView類定義了許多可重載的事件處理函數(shù),當一定的事件發(fā)生時,MFC框架會自動調(diào)用相應的事件處理函數(shù)。用戶可以重載這些函數(shù),添加自己的代碼,實現(xiàn)應用程式特定的功能。下麵列舉了一些,詳細的資料可查閱MSDN文檔。
OnNavigateComplete2
對於一個窗口或顯示框架,完成到一個超鏈接的導航後,調(diào)用此函數(shù)
OnBeforeNavigate2
對於一個窗口或顯示框架,在給定的Web流覽器中,一個導航出現(xiàn)之前,調(diào)用此函數(shù)
virtualvoidOnStatusTextChange(LPCTSTRlpszText);
當與WebBrowser控件相關的狀態(tài)欄的文本改變時,調(diào)用此函數(shù),參數(shù)lpszText包含新的狀態(tài)欄文本的字串。virtualvoidOnVisible(BOOLbVisible);
當WebBrowser的窗口應當被顯示或隱藏時,框架調(diào)用此函數(shù),bVisible表示了窗口的狀態(tài),:如果為非零,對象可見;為零,對象不可見。virtualvoidOnToolBar(BOOLbToolBar);
當ToolBar屬性已經(jīng)改變時,調(diào)用此函數(shù),bToolBar為非零,IE的工具欄是可見的;否則相反。
virtualvoidOnMenuBar(BOOLbMenuBar);
當MenuBar屬性已改變時,調(diào)用此函數(shù)。bMenuBar為非零,菜單欄可見;否則相反。
9.2.3創(chuàng)建一個Web流覽器型的應用程式的一般步驟1.利用MFCAppWizard創(chuàng)建SDI或MDI應用程式前幾章創(chuàng)建的都是基於對話框的程式,Web流覽器型的應用程式一般是單文檔或多文檔的程式。利用MFC應用程式嚮導創(chuàng)建SDI或MDI應用程式需要經(jīng)過6步,你可以回到前一步或進到後一步來改變你已經(jīng)選擇過的選項。在每一步,對每一個選項都可以得到幫助,右擊控件,可以得到關於每個選項控件的資訊。
在VC++集成開發(fā)環(huán)境中點菜單File/New...,出現(xiàn)新工程對話框,如圖9.3。
圖9.3創(chuàng)建新工程的對話框
選擇MFCAppWizard[.exe]類型的工程,輸入工程的名字,決定工程檔存放的位置,然後點擊OK按鈕,出現(xiàn)第一步對話框。如圖9.4。
(1)第一步:選擇應用程式結(jié)構(gòu)
圖9.4第一步:選擇應用程式結(jié)構(gòu)
①為你的應用程式選擇三種結(jié)構(gòu)之一,單文檔(SingleDocumentSDI),多文檔(MultipleDocumentMDI),基於對話框(DialogBased)。Web流覽器型的應用程式一般選擇SDI類型,以下的操作都假定選擇了SDI類型。②決定你的應用程式是否要支持MFC的文檔/視圖結(jié)構(gòu)(document/viewarchitecture),實際你必須選擇支持,因為不支持文檔/視圖結(jié)構(gòu)的應用程式不能打開磁片檔和從CWnd類繼承的窗口區(qū),並且後面的步驟都是無效的。③選擇資源中的文本所使用的語言,應選擇“中文[中國]”。作完這三件事以後,點擊Next按鈕,出現(xiàn)第二步對話框。如圖9.5。(2)第二步:選擇應用程式支持的資料庫
圖9.5第二步:選擇應用程式支持的資料庫
①為你的程式選擇一種資料庫支持,有四個選項。沒有(None),頭檔支持(Headerfilesupport),帶有檔支持的資料庫視圖(DatabaseViewwithfilesupport)或沒有檔支持的資料庫視圖(DatabaseViewwithoutfilesupport)。②如果你選擇了資料庫支持,點擊數(shù)據(jù)源(DataSource),在外部ODBC資料庫、DAO資料庫和OLEDB資料庫中選擇一個,然後選擇相應的數(shù)據(jù)源和數(shù)據(jù)庫表選項。
③點擊Next按鈕,出現(xiàn)第三步對話框,如圖9.6。
(3)第三步:選擇應用程式支持的複合文檔
圖9.6選擇應用程式支持的複合文檔
①選擇你的應用程式支持的複合文檔(compounddocument)類型。有五個選項:None:不支持複合文檔Container:容器,一個OLE2.0風格的文檔容器。Mini-server:最小伺服器,一個OLE伺服器,但不能作為一個獨立的程式來運行。Full-server:完全伺服器,一個OLE伺服器,可以作為獨立程式運行。Bothcontainerandserver:容器和服務器兩者。
②也可以選擇選項來啟用標準的ActiveX資源,增加額外的自動命令到應用程式的菜單條中。
③點擊Next按鈕,出現(xiàn)第四步對話框,如圖9.7。
(4)第四步:選擇應用程式的介面特性
圖9.7第四步:選擇應用程式的介面特性
①為你的程式選擇基本的用戶介面特性。如快捷的工具條、初始狀態(tài)欄、列印和列印預覽、內(nèi)容敏感的幫助、3D控件、Windows套接字等,都是複選框。②要使用的工具條形式,IE4.0ReBars或者MFC常規(guī)的工具條。③最近打開的檔列表數(shù)目,默認值是4。
④如果你想要修改你的程式的名字和擴展名,或者為你的程式調(diào)整用戶介面窗口框架風格,點擊Advanced。如圖9.8。
圖9.8設置工程的高級屬性
⑤點擊Next,出現(xiàn)第五步對話框。如圖9.9所示。
(5)第5步:決定三個問題圖9.9第5步:決定三個問題
①選擇工程風格:WindowsExplorer:左邊是一個樹形視圖,右邊是一個列表視圖。MFCStandard:為檔視圖提供一個區(qū)域。②選擇是否希望應用程式嚮導在原始檔案中產(chǎn)生注釋,以便指導你編寫程式。③選擇使用MFC庫的選項AsasharedDLL:庫作為共用的DLLAsastaticallylinkedlibrary:庫作為靜態(tài)鏈節(jié)的DLL注意,靜態(tài)鏈接到MFC的庫僅僅在VC++的專業(yè)版和企業(yè)版中支持(ProfessionalandEnterpriseEditions)。
④點擊Next,出現(xiàn)MFCAppWizard–Step6of6對話框。如圖9.10。
(6)第6步:決定類名和基類
圖9.10第6步:決定類名和基類
①如果你想要改變默認的由應用程式嚮導提供的類名,基類,頭檔,或者實現(xiàn)檔的名字,輸入新的名字,要改變基類,選擇你的程式的視圖類。②點擊Finish按鈕,出現(xiàn)NewProjectInformation對話框。如圖9.11。說明了應用程式的類型,創(chuàng)建的類、應用程式的特性和工程的目錄。
③點擊OK按鈕,工程創(chuàng)建成功,進入VC++集成的開發(fā)環(huán)境。
圖9.11新工程的資訊
2.創(chuàng)建一個Web流覽器型的應用程式你可以使用MFCAppWizard創(chuàng)建一個Web流覽器型的應用程式。遵照使用MFC應用程式嚮導創(chuàng)建SDI或MDI的.exe程式的六個步驟。應用程式必須是基於MFC的文檔/視圖結(jié)構(gòu)的,要注意的是,在第六步,使用Baseclass下拉列表框,必須選擇CHtmlView類作為視圖類的基類。其他步驟根據(jù)應用程式的需要來決定,大部分使用默認值就可以了。CHtmlView類扮演一個Web流覽器控件的封裝器,給你的應用程式一個視圖來顯示W(wǎng)eb或HTML頁面。嚮導在該視圖類中對OnInitialUpdate函數(shù)創(chuàng)建了一個重載。
providinganavigationallinktotheMicrosoftVisualC++Website:voidCWebView::OnInitialUpdate(){CHtmlView::OnInitialUpdate();
//TODO:Thiscodenavigatestoapopularspotontheweb.//changethecodetogowhereyou'dlike.Navigate2(_T("http://www.microsoft.com/visualc/"),NULL,NULL);}你可以用一個你自己的站點代替Navigate2函數(shù)中的站點,或者你也可以使用LoadFromResource函數(shù),來打開一個HTML頁面,它在你的工程的資源腳本內(nèi),作為默認的要觀察的內(nèi)容,例如:voidCWebView::OnInitialUpdate(){CHtmlView::OnInitialUpdate();//TODO:Thiscodenavigatestoapopularspotontheweb.//changethecodetogowhereyou'dlike.LoadFromResource(IDR_HTML1);}
需要說明,當你使用MFC應用程式嚮導創(chuàng)建程式時,如果在第一步為應用程式選擇的結(jié)構(gòu)是基於對話框的,則後面的步驟與前面介紹的6個步驟不太一樣,只需要4步就夠了。(1)為基於對話框的程式完成第1步①為你的應用程式選擇三種結(jié)構(gòu)之一,這裏選擇基於對話框(DialogBased)。②決定你的應用程式是否要支持MFC的文檔/視圖結(jié)構(gòu)(document/viewarchitecture),你必須選擇支持。③為文本選擇一種語言,然後點擊Next(2)為基於對話框的程式完成第2步①為你的程式選擇基本的用戶介面特性和套接字支持。
②點擊Next。
(3)為基於對話框的程式完成第3步①如果你需要原始檔案中的注釋,它告訴你需要在哪里添加你自己的代碼。②選擇你想要如何使用MFC庫,作為共用的DLL。還是靜態(tài)鏈接的DLL。(4)為基於對話框的程式完成第4步①如果你想要改變應用程式嚮導為你提供的默認的類名,頭檔案名或?qū)崿F(xiàn)檔案名,輸入新的名字。
②點擊Finish。
9.3Web流覽器應用程式實例9.3.1程式實現(xiàn)的目標使用CHtmlView類來實現(xiàn)一個應用程式,使之具有Web流覽器的功能,包括流覽網(wǎng)頁、前進、後退、返回主頁和搜索功能。通過實例,重點掌握利用CHtmlView類開發(fā)Web客戶端程式的方法。實現(xiàn)的程式介面如圖9.12。
圖9.12myWeb應用程式的介面
9.3.2創(chuàng)建實例程式1.利用MFCAppWizard生成應用程式框架工程名為myWeb,第一步,工程類型為單文檔(SDI),中文語言支持。第二步和第三步使用默認值,不需要資料庫,也不提供對於複合對象的支持。第四步選擇InternetExplorerReBars工具欄的風格,這樣就有了用來輸入網(wǎng)址的文本框。第五步不作任何修改,第六步應選擇CHtmlView類作為視圖類的基類。生成的工程框架包含四個類:
應用程式類,CMyWebApp,對應myWeb.h和myWeb.cpp檔??蚣茴悾珻MainFrame,對應MainFrm.h和MainFrm.cpp檔。文檔類,CMyWebDoc,對應myWebDoc.h和myWebDoc.cpp檔。
HtmlView類,CMyWebView,對應myWebView.h和myWebView.cpp檔。此時編譯運行,程式已經(jīng)具有了基本的Web流覽功能,能自動連到微軟的網(wǎng)站。2.修改菜單修改菜單,添加用戶需要的功能條目。在工作區(qū)中選擇ResourceView卡,選擇Menu,雙擊菜單控件的名字(IDR_MAINFRAME),右邊出現(xiàn)程式的菜單。點擊菜單中的“查看”項,已經(jīng)有了“工具欄”和“狀態(tài)欄”兩個條目,雙擊下麵的空框,彈出設置菜單條目屬性對話框,如圖9.13所示,按照表9.1添加六個菜單條目。
圖9.13設置菜單條目屬性的對話框表9.1要添加的菜單條目菜單條目名稱(Caption)ID號前進ID_FOWARD後退ID_BACK停止ID_STOP刷新ID_UPDATE主頁ID_HOMEPAGE搜索ID_SEARCH3.修改工具欄在工具欄上增加新的按鈕,以便快速執(zhí)行所需的功能。在工作區(qū)中選擇ResourceView卡,選擇ToolBar,雙擊工具條控件的名字(IDR_MAINFRAME),右邊出現(xiàn)程式的工具條。雙擊其中的按鈕,可以看到它們的屬性。其中有一個空的按鈕,雙擊它可以添加新的按鈕的屬性,如圖9.14,利用右邊的圖形繪製工具,可以自己設計新按鈕的圖樣。
按照表9.1添加六個按鈕,它們的ID號與相應的菜單條目相同。拖動按鈕,可以改變按鈕之間的相對位置。
4.為控件添加事件處理函數(shù)當用戶點擊菜單條目,或者點擊相應的快捷按鈕時,應能引起程式的反映,這就需要給這些控件添加事件處理函數(shù)。進入類嚮導,選擇“MessageMaps”卡。在“ClassName”下拉框中選擇CMyWebView類,然後按照表9.2,為前述的六個控件添加事件處理函數(shù)。
表9.2六個控件對應的事件處理函數(shù)
對象IDMessagesMemberFunctionID_FOWARDCOMMANDOnFoward()ID_BACKCOMMANDOnBack()ID_STOPCOMMANDOnStop()ID_UPDATECOMMANDOnUpdate()ID_HOMEPAGECOMMANDOnHomepage()ID_SEARCHCOMMANDOnSearch()5.添加事件處理函數(shù)的代碼在myWebView.cpp實現(xiàn)檔中,添加上述六個事件處理函數(shù)的代碼。//前進到下一個網(wǎng)頁voidCMyWebView::OnFoward(){GoForward();}//退到前一個網(wǎng)頁voidCMyWebView::OnBack(){GoBack();}//停止網(wǎng)頁的下載voidCMyWebView::OnStop(){Stop();}
//刷新當前的網(wǎng)頁voidCMyWebView::OnUpdate(){Refresh();}//回到主頁voidCMyWebView::OnHomepage(){GoHome();}//進行搜索voidCMyWebView::OnSearch(){GoSearch();}此時可以再編譯運行,應當沒有問題。
6.為應用程式添加URL定位功能至此,應用程式還無法流覽用戶想要的網(wǎng)頁,還沒有URL定位功能。通過以下步驟來添加這個功能。(1)添加網(wǎng)址輸入欄控件在建立應用程式框架時,曾選擇了InternetExplorerReBars的工具條風格,這就自動在程式的資源中添加了一個對話框條,可以將它變?yōu)橐粋€網(wǎng)址的輸入欄。在工作區(qū)中選擇ResourceView卡,選擇Dialog,雙擊對話框控件的名字(IDR_MAINFRAME),右邊出現(xiàn)這個對話框條。在上面添加一個“地址:”的靜態(tài)文本,再添加一個文本編輯框控件,ID號是IDC_ADDR,作為地址欄,提供給用戶輸入要流覽的網(wǎng)站地址。
(2)添加控制代碼設想當用戶在地址欄中輸入網(wǎng)址後,打回車鍵時,流覽器應用程式就下載並顯示指定的新網(wǎng)頁,為了實現(xiàn)這個功能,考慮到用戶在文本編輯框中按下回車鍵後,會有一個IDOK的消息發(fā)送到主框架類,可以添加處理這個消息的控制函數(shù),在該函數(shù)中,用指定的網(wǎng)址調(diào)用Navigate()或者Navigate2()函數(shù),就可以實現(xiàn)對該網(wǎng)頁的流覽。①在MainFrm.h檔中,添加消息處理函數(shù)的聲明:public:voidOnNew();②在MainFrm.cpp檔中,添加該函數(shù)的實現(xiàn)代嗎:voidCMainFrame::OnNew(){CStringpp;//獲得用戶在地址欄中輸入的URLm_wndDlgBar.GetDlgItem(IDC_ADDR)->GetWindowText(pp);//流覽指定的網(wǎng)頁((CMyWebView*)GetActiveView())->Navigate(pp);}其中m_wndDlgBar是代表地址欄文本框所在的對話框條控件的成員變數(shù),是在生成應用程式框架的時候自動創(chuàng)建的,利用它的GetDlgItem方法取得地址欄控件的ID,再利用地址欄控件的GetWindowText方法獲得用戶輸入的網(wǎng)址。另外,由GetActiveView()函數(shù)返回的是一個CView類的指針,必須將它強制轉(zhuǎn)換成本應用程式視圖類的指針,才能調(diào)用Navigate()
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年湘教版必修2物理下冊階段測試試卷含答案
- 2025年度魚塘租賃合同(含漁業(yè)產(chǎn)業(yè)鏈整合及供應鏈管理)3篇
- 2025年度牛奶包裝設計及定制采購合同4篇
- 2025年粵教滬科版九年級歷史下冊月考試卷含答案
- 二零二五年度破產(chǎn)重整法律服務合同3篇
- 2024年度青海省公共營養(yǎng)師之四級營養(yǎng)師考前沖刺試卷A卷含答案
- 2025年度電梯安全法律法規(guī)修訂與解讀服務合同3篇
- 2024年度青海省公共營養(yǎng)師之二級營養(yǎng)師強化訓練試卷A卷附答案
- 2024年度黑龍江省公共營養(yǎng)師之三級營養(yǎng)師綜合練習試卷A卷附答案
- 2025年浙科版必修3生物下冊階段測試試卷含答案
- 疥瘡病人的護理
- 人工智能算法與實踐-第16章 LSTM神經(jīng)網(wǎng)絡
- 17個崗位安全操作規(guī)程手冊
- 2025年山東省濟南市第一中學高三下學期期末統(tǒng)一考試物理試題含解析
- 中學安全辦2024-2025學年工作計劃
- 網(wǎng)絡安全保障服務方案(網(wǎng)絡安全運維、重保服務)
- 2024年鄉(xiāng)村振興(產(chǎn)業(yè)、文化、生態(tài))等實施戰(zhàn)略知識考試題庫與答案
- 現(xiàn)代科學技術概論智慧樹知到期末考試答案章節(jié)答案2024年成都師范學院
- 軟件模塊化設計與開發(fā)標準與規(guī)范
- 2024年遼寧鐵道職業(yè)技術學院高職單招(英語/數(shù)學/語文)筆試歷年參考題庫含答案解析
- 有機農(nóng)業(yè)種植模式
評論
0/150
提交評論