Windows體系編程實(shí)驗(yàn)報(bào)告_第1頁
Windows體系編程實(shí)驗(yàn)報(bào)告_第2頁
Windows體系編程實(shí)驗(yàn)報(bào)告_第3頁
Windows體系編程實(shí)驗(yàn)報(bào)告_第4頁
Windows體系編程實(shí)驗(yàn)報(bào)告_第5頁
已閱讀5頁,還剩12頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、課程設(shè)計(jì)(綜合實(shí)驗(yàn))報(bào)告( 2014 - 2015 年度第 學(xué)期)名 稱: Windows體系編程 題 目: 課內(nèi)綜合實(shí)驗(yàn) 院 系: 計(jì)算機(jī)系 班 級(jí): 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師: 實(shí)驗(yàn)學(xué)時(shí): 12學(xué)時(shí) 成 績(jī): 日期: 2015 年 4 月 28 日一、課程設(shè)計(jì)(綜合實(shí)驗(yàn))的目的與要求1 正文為宋體,五號(hào)字 行間距為21 11 -12 -二、設(shè)計(jì)(實(shí)驗(yàn))正文1 正文為宋體,五號(hào)字 行間距為21 11 -12 -三、課程設(shè)計(jì)(綜合實(shí)驗(yàn))總結(jié)或結(jié)論1 正文為宋體,五號(hào)字 行間距為21 11 -12 -四、參考文獻(xiàn) 1 作者1, 作者2. 書名. 出版單位, 版本. 出版日期附錄(設(shè)計(jì)流程圖

2、、程序、表格、數(shù)據(jù)等)注:根據(jù)課程設(shè)計(jì)、綜合實(shí)驗(yàn)的內(nèi)容將標(biāo)題任選其一。實(shí)驗(yàn)一 進(jìn)程管理實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康?理解Windows編程環(huán)境下的進(jìn)程管理機(jī)制,能創(chuàng)建一個(gè)完成特定功能的進(jìn)程,并能對(duì)進(jìn)程進(jìn)行信息的獲取、終止和保護(hù)。二、實(shí)驗(yàn)要求 1. 編寫一段程序,能夠完成創(chuàng)建進(jìn)程的功能,要求啟動(dòng)windows記事本程序(notepad.exe),同時(shí)打開一個(gè)文本文件,路徑為:c:systemuser.log 。并打印出新建進(jìn)程ID。2. 獲取當(dāng)前系統(tǒng)進(jìn)程信息,打印輸出進(jìn)程名稱和ID號(hào)。3. 終止新創(chuàng)建的進(jìn)程并獲取退出代碼。三、實(shí)驗(yàn)原理(1)進(jìn)程的創(chuàng)建進(jìn)程的創(chuàng)建通過CreateProcess()函數(shù)來實(shí)現(xiàn),C

3、reateProcess()通過創(chuàng)建一個(gè)新的進(jìn)程及在其地址空間內(nèi)運(yùn)行的主線程來啟動(dòng)并運(yùn)行一個(gè)新的程序。具體地,在執(zhí)行CreateProcess()函數(shù)時(shí),首先由操作系統(tǒng)負(fù)責(zé)創(chuàng)建一個(gè)進(jìn)程內(nèi)核對(duì)象,初始化計(jì)數(shù)為1,并立即為新進(jìn)程創(chuàng)建一塊虛擬地址空間。隨后將可執(zhí)行文件或其他任何必要的動(dòng)態(tài)鏈接庫文件的代碼和數(shù)據(jù)裝載到該地址空間中。在創(chuàng)建主線程時(shí),也是首先由系統(tǒng)負(fù)責(zé)創(chuàng)建一個(gè)線程內(nèi)核對(duì)象,并初始化為1。最后啟動(dòng)主線程并執(zhí)行進(jìn)程的入口函數(shù)WinMain(),完成對(duì)進(jìn)程和執(zhí)行線程的創(chuàng)建。CreateProcess()函數(shù)的原型聲明如下:BOOL CreateProcess(LPCTSTR lpApplicat

4、ionName, / 可執(zhí)行模塊名LPTSTR lpCommandLine, / 命令行字符串LPSECURITY_ATTRIBUTES lpProcessAttributes, / 進(jìn)程的安全屬性 LPSECURITY_ATTRIBUTES lpThreadAttributes, / 線程的安全屬性 BOOL bInheritHandles, / 句柄繼承標(biāo)志 DWORD dwCreationFlags, / 創(chuàng)建標(biāo)志 LPVOID lpEnvironment, / 指向新的環(huán)境塊的指針 LPCTSTR lpCurrentDirectory, / 指向當(dāng)前目錄名的指針 LPSTARTUPIN

5、FO lpStartupInfo, / 指向啟動(dòng)信息結(jié)構(gòu)的指針 LPPROCESS_INFORMATION lpProcessInformation / 指向進(jìn)程信息結(jié)構(gòu)的指針 );(2)進(jìn)程的獲取進(jìn)程的定義是為執(zhí)行程序指令的線程而保留的一系列資源的集合。進(jìn)程是一個(gè)可執(zhí)行的程序,由私有虛擬地址空間、代碼、數(shù)據(jù)和其他操作系統(tǒng)資源(如進(jìn)程創(chuàng)建的文件、管道、同步對(duì)象等)組成。進(jìn)程是一些所有權(quán)的集合,一個(gè)進(jìn)程擁有內(nèi)存、CPU運(yùn)行時(shí)間等一系列資源,為線程的運(yùn)行提供一個(gè)環(huán)境,每個(gè)進(jìn)程都有它自己的地址空間和動(dòng)態(tài)分配的內(nèi)存、線程、文件和其他一些模塊。系統(tǒng)快照的獲取可以通過Win32 API函數(shù)CreateTo

6、olhelp32Snapshot()來完成,通過該函數(shù)不僅可以獲取進(jìn)程的快照,同樣可以獲取堆、模塊和線程的系統(tǒng)快照。函數(shù)的聲明如下:HANDLE WINAPI CreateToolhelp32Snapshot(DWORD dwFlags, /指定要?jiǎng)?chuàng)建包含哪一類系統(tǒng)信息的快照函數(shù)DWORD th32ProcessID /指定進(jìn)程的ID號(hào),當(dāng)設(shè)定為0時(shí)表示指定當(dāng)前進(jìn)程);一旦系統(tǒng)得到系統(tǒng)快照句柄,就可以對(duì)當(dāng)前的標(biāo)識(shí)號(hào)進(jìn)行枚舉,進(jìn)程號(hào)通過函數(shù)Process32First()和Procee32Next()得到,這兩個(gè)函數(shù)可以用于獲取系統(tǒng)快照中第一個(gè)和下一個(gè)系統(tǒng)的信息,這兩個(gè)函數(shù)的聲明如下:BOOL

7、WINAPI Process32First(HANDLE hSnapshot, / 系統(tǒng)快照句柄LPPROCESSENTRY32 lppe / 指向結(jié)構(gòu)體PROCESSENTRY32的指針);BOOL WINAPI Process32Next(HANDLE hSnapshot, / 系統(tǒng)快照句柄LPPROCESSENTRY32 lppe / 指向結(jié)構(gòu)體PROCESSENTRY32的指針);(3)進(jìn)程的終止終止進(jìn)程也就是結(jié)束進(jìn)程,讓進(jìn)程從內(nèi)存中卸載。進(jìn)程的終止的原因一般有4種。1) 主線程的入口函數(shù)返回。2) 進(jìn)程中的一個(gè)線程調(diào)用ExitProcess函數(shù)。3) 次進(jìn)程中的所有線程結(jié)束。4) 其

8、他進(jìn)程中又有線程都結(jié)束。要結(jié)束當(dāng)前進(jìn)程一般讓主線程的入口函數(shù)返回。當(dāng)用戶的程序入口函數(shù)返回的時(shí)候,啟動(dòng)函數(shù)會(huì)調(diào)用C/C+運(yùn)行期退出函數(shù)EXIT,并將用戶的返回值傳遞給它。EXTI函數(shù)會(huì)銷毀所有全局的或靜態(tài)的C+對(duì)象,然后調(diào)用系統(tǒng)函數(shù)ExitProcess促使操作系統(tǒng)終止應(yīng)用程序。ExitProcess是一個(gè)API函數(shù),它會(huì)結(jié)束當(dāng)前應(yīng)用程序的執(zhí)行,并設(shè)置退出代碼,函數(shù)聲明如下:Void ExitProcess(UINT uExitCode); /參數(shù)uExitCode為此程序的退出代碼 四、實(shí)驗(yàn)所需儀器、設(shè)備、材料(試劑)Windows操作系統(tǒng),Microsoft Visual c+6.0或.N

9、ET環(huán)境,msdn幫助文檔。5、 實(shí)驗(yàn)正文/ 02CreateProcess.cpp文件/#include "stdafx.h"#include <windows.h>#include <stdio.h>#include <tlhelp32.h> / 聲明快照函數(shù)的頭文件int CreateProcess()char szCommandLine = "notepad c:user.log"STARTUPINFO si = sizeof(si) ;PROCESS_INFORMATION pi;si.dwFlags = S

10、TARTF_USESHOWWINDOW;/ 指定wShowWindow成員有效si.wShowWindow = TRUE;/ 此成員設(shè)為TRUE的話則顯示新建進(jìn)程的主窗口,/ 為FALSE的話則不顯示BOOL bRet = :CreateProcess (NULL,/ 不在此指定可執(zhí)行文件的文件名szCommandLine,/ 命令行參數(shù)NULL,/ 默認(rèn)進(jìn)程安全性NULL,/ 默認(rèn)線程安全性FALSE,/ 指定當(dāng)前進(jìn)程內(nèi)的句柄不可以被子進(jìn)程繼承CREATE_NEW_CONSOLE,/ 為新進(jìn)程創(chuàng)建一個(gè)新的控制臺(tái)窗口NULL,/ 使用本進(jìn)程的環(huán)境變量NULL,/ 使用本進(jìn)程的驅(qū)動(dòng)器和目錄&am

11、p;si,&pi);if(bRet)/ 既然我們不使用兩個(gè)句柄,最好是立刻將它們關(guān)閉:CloseHandle (pi.hThread);:CloseHandle (pi.hProcess);printf(" 新進(jìn)程的進(jìn)程ID號(hào):%d n", pi.dwProcessId);printf(" 新進(jìn)程的主線程ID號(hào):%d n", pi.dwThreadId);return 0;int ListProcess()PROCESSENTRY32 pe32;/ 在使用這個(gè)結(jié)構(gòu)之前,先設(shè)置它的大小pe32.dwSize = sizeof(pe32); / 給系

12、統(tǒng)內(nèi)的所有進(jìn)程拍一個(gè)快照HANDLE hProcessSnap = :CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);if(hProcessSnap = INVALID_HANDLE_VALUE)printf("CreateToolhelp32Snapshot調(diào)用失敗n");return -1;/ 遍歷進(jìn)程快照,輪流顯示每個(gè)進(jìn)程的信息BOOL bMore = :Process32First(hProcessSnap, &pe32);while(bMore)printf(" 進(jìn)程名稱:%s n", p

13、e32.szExeFile);printf(" 進(jìn)程ID號(hào):%u nn", pe32.th32ProcessID);bMore = :Process32Next(hProcessSnap, &pe32);/ 不要忘記清除掉snapshot對(duì)象:CloseHandle(hProcessSnap);return 0;BOOL TerminateProcessFromId(DWORD dwId)BOOL bRet = FALSE;/ 打開目標(biāo)進(jìn)程,取得進(jìn)程句柄HANDLE hProcess = :OpenProcess(PROCESS_ALL_ACCESS, FALSE,

14、 dwId);if(hProcess != NULL)/ 終止進(jìn)程/GetExitCodeProcess(hProcess, &ExitCode); bRet = :TerminateProcess(hProcess, 0);CloseHandle(hProcess);return bRet;int TiminateProcess()DWORD dwId;printf(" 請(qǐng)輸入您要終止的進(jìn)程的ID號(hào): n");scanf("%u", &dwId);if(TerminateProcessFromId(dwId)printf("

15、終止進(jìn)程成功! n");elseprintf(" 終止進(jìn)程失敗! n");return 0;int main(int argc, char* argv)int choice;/while(1)printf("請(qǐng)選擇功能:n1.新建進(jìn)程n2.列出進(jìn)程表n3.終止進(jìn)程");scanf("%d",&choice);switch(choice)case 1:CreateProcess();break;case 2:ListProcess();break;case 3:TiminateProcess();break;retur

16、n 0;運(yùn)行結(jié)果:六、思考題 進(jìn)程被終止程序的對(duì)話框關(guān)閉七、實(shí)驗(yàn)總結(jié) 本次實(shí)驗(yàn)主要是類似進(jìn)程管理的,涉及創(chuàng)建進(jìn)程,獲取進(jìn)程列表,終止進(jìn)程,通過這次實(shí)驗(yàn),加深了對(duì)進(jìn)程處理過程的理解,學(xué)習(xí)到了很多東西,雖然實(shí)驗(yàn)過程中遇到過困難,在老師和同學(xué)的幫助下,基本得到了解決。實(shí)驗(yàn)二 用多線程同步方法解決哲學(xué)家就餐問題實(shí)驗(yàn)名稱:用多線程同步方法解決哲學(xué)家就餐問題 實(shí)驗(yàn)類型: 設(shè)計(jì)性實(shí)驗(yàn)學(xué)時(shí): 4適用對(duì)象: 軟件工程專業(yè)、網(wǎng)絡(luò)工程專業(yè)、信息安全專業(yè)一、實(shí)驗(yàn)?zāi)康?理解Windows編程環(huán)境下的線程同步機(jī)制,掌握線程同步的方法,包括臨界區(qū)對(duì)象、事件內(nèi)核對(duì)象、互鎖函數(shù)等方法,并能用線程同步解決經(jīng)典的線程同步問題,體會(huì)

17、多線程編程。二、實(shí)驗(yàn)要求 1)為每個(gè)哲學(xué)家產(chǎn)生一個(gè)線程,設(shè)計(jì)正確的同步算法2)每個(gè)哲學(xué)家取得一雙筷子開始用餐后,即時(shí)顯示“Dining”和該哲學(xué)家的自定義標(biāo)識(shí)符以及餐桌上所有幾位哲學(xué)家標(biāo)識(shí)符及其所坐的位置。3)設(shè)定共有5個(gè)哲學(xué)家需用餐。每位用餐耗時(shí)10秒鐘以上。4)多個(gè)哲學(xué)家須共享操作函數(shù)代碼三、實(shí)驗(yàn)原理本實(shí)驗(yàn)設(shè)計(jì)解決的是哲學(xué)家就餐問題,共有5個(gè)哲學(xué)家繞一個(gè)圓桌做在5個(gè)位置上,他們每2個(gè)人中間有一只筷子,共5只筷子,只有當(dāng)每個(gè)哲學(xué)家取得他左右兩邊的筷子時(shí),哲學(xué)家才能開始就餐,其它時(shí)間,哲學(xué)家只能思考或等待筷子。為避免哲學(xué)家互相等待對(duì)方的筷子發(fā)生死鎖,因此,奇數(shù)座位的哲學(xué)家按先左后右的順序拿筷子

18、,偶數(shù)座位的哲學(xué)家按先右后左的順序拿筷子。本課程設(shè)計(jì)針對(duì)5只筷子分別設(shè)置了5個(gè)事件內(nèi)核對(duì)象,以保證每只筷子每次只能被取得一次;針對(duì)每個(gè)哲學(xué)家,通過共享操作函數(shù)代碼,分別建立5個(gè)線程,以同步哲學(xué)家就餐。四、實(shí)驗(yàn)所需儀器、設(shè)備、材料(試劑)Windows操作系統(tǒng),Microsoft Visual c+6.0或.NET環(huán)境,msdn幫助文檔。五、實(shí)驗(yàn)預(yù)習(xí)要求、實(shí)驗(yàn)條件、方法及步驟 上機(jī)編程之前應(yīng)熟悉課程相應(yīng)的部分,實(shí)驗(yàn)原理及相關(guān)的數(shù)據(jù)結(jié)構(gòu)。6、 實(shí)驗(yàn)正文/ 哲學(xué)家就餐.cpp : Defines the entry point for the console application./#includ

19、e "stdafx.h"#include <windows.h>#include <process.h>#include <iostream.h>HANDLE HChop5;CRITICAL_SECTION cs;void print(int num) :EnterCriticalSection(&cs); cout<<num<<"號(hào)哲學(xué)家"<<"Dining."<<endl; :LeaveCriticalSection(&cs);UI

20、NT WINAPI ThreadProc(LPVOID Param)int number=*(int*)(Param); for(int i = 0; i < 5; i+) if(number%2=0)/number是偶數(shù) 先右后左 WaitForSingleObject(HChopnumber-1,INFINITE); WaitForSingleObject(HChopnumber,INFINITE); print(number); Sleep(5*1000); SetEvent(HChopnumber-1); SetEvent(HChopnumber); else/先左后右 Wait

21、ForSingleObject(HChopnumber%5,INFINITE); WaitForSingleObject(HChopnumber-1,INFINITE); print(number); Sleep(5*1000); SetEvent(HChopnumber%5); SetEvent(HChopnumber-1); return 0;int main(int argc, char* argv) HANDLE H5; int *p=new int5;:InitializeCriticalSection(&cs);for(int i=0;i<5;i+) pi=i+1;/

22、Hi=CreateThread(NULL, 0,ThreadProc, &pi, 0,&dwThreadId);Hi = (HANDLE)_beginthreadex(NULL, 0, ThreadProc, &pi, CREATE_SUSPENDED, NULL);HChopi=CreateEvent(NULL, FALSE, FALSE, NULL);for(int j=0;j<5;j+)SetEvent(HChopj); ResumeThread(Hj); WaitForMultipleObjects(5,H,TRUE,INFINITE); for(int

23、k=0;k<5;k+)CloseHandle(Hk);CloseHandle(HChopk); :DeleteCriticalSection(&cs); return 0;運(yùn)行結(jié)果:六、思考題其他同步方法有:臨界區(qū)法,互斥量法,信號(hào)量法,事件, 其中信號(hào)量就是本程序所采用的方法七、實(shí)驗(yàn)總結(jié)本次實(shí)驗(yàn)主要是針對(duì)線程處理的,涉及臨界區(qū),時(shí)間內(nèi)核對(duì)象等相關(guān)知識(shí),哲學(xué)家就餐問題加深了我對(duì)線程同步的認(rèn)識(shí),實(shí)驗(yàn)過程也不是一帆風(fēng)順,不過通過本次實(shí)驗(yàn)還是掌握了許多知識(shí),收獲頗豐。實(shí)驗(yàn)三 簡(jiǎn)易繪圖器實(shí)驗(yàn)名稱:簡(jiǎn)易繪圖器 實(shí)驗(yàn)類型: 綜合性實(shí)驗(yàn)學(xué)時(shí): 4適用對(duì)象: 軟件工程專業(yè)、網(wǎng)絡(luò)工程專業(yè)

24、、信息安全專業(yè)一、實(shí)驗(yàn)?zāi)康?該實(shí)驗(yàn)為綜合實(shí)驗(yàn),通過該實(shí)驗(yàn),使學(xué)生學(xué)習(xí)使用visual c+進(jìn)行簡(jiǎn)單的綜合功能的系統(tǒng)開發(fā)。鞏固Windows編程的基礎(chǔ)知識(shí),增加學(xué)生的利用圖形子環(huán)境編程的綜合能力,包括界面設(shè)計(jì)能力、使用GDI,GDI+或WPF的能力等。二、實(shí)驗(yàn)要求 1.利用GDI,GDI+或WPF實(shí)現(xiàn)簡(jiǎn)單繪圖器,選其中一種即可,編程環(huán)境不限。2.實(shí)現(xiàn)繪制線條、矩形、圓形,可改變線條或填充的顏色。三、實(shí)驗(yàn)原理Windows的圖形子系統(tǒng)經(jīng)歷了GDI、GDI+ 和WPF三個(gè)發(fā)展階段。1GDI傳統(tǒng)的GDI(Graphics Device Interface,圖形設(shè)備接口)是微軟隨Windows 1.0(

25、1985年11月)推出的Windows基本圖形子系統(tǒng),用于與顯卡和顯示設(shè)備無關(guān)的圖形界面編程,支持WYSIWYG(What You See Is What You Get,所見即所得)。2GDI+新式的GDI+是隨Windows XP(2001年10月)推出的GDI的改進(jìn)版,增加了混色、漸變畫刷、樣條曲線、矩陣變換、圖像處理、持久路徑等新功能,GDI+也是.NET框架中Windows窗體使用的圖形子系統(tǒng)。圖1 參考界面3WPF隨Windows Vista和.NET框架3.0(2006年11月)微軟又推出了全新的Windows圖形子系統(tǒng)WPF(Windows Presentation Found

26、ation,視窗展示基礎(chǔ)),它統(tǒng)一了桌面和瀏覽器等客戶端應(yīng)用程序的圖形界面,基于DirectX和.NET框架,采用聲明式XAML進(jìn)行界面設(shè)計(jì),是Windows的下一代GUI顯示系統(tǒng)。XAML(eXtensible Application Markup Language,可擴(kuò)展應(yīng)用程序標(biāo)記語言)是一種基于XML(eXtensible Markup Language,可擴(kuò)展標(biāo)記語言,一種由萬維網(wǎng)協(xié)會(huì)定義的通用數(shù)據(jù)描述語言)的用戶界面標(biāo)記語言,用于定義UI元素、數(shù)據(jù)綁定、事件和其他特性。四、實(shí)驗(yàn)所需儀器、設(shè)備、材料(試劑)Windows操作系統(tǒng),Microsoft Visual c+6.0或.NET

27、環(huán)境,msdn幫助文檔。五、實(shí)驗(yàn)預(yù)習(xí)要求、實(shí)驗(yàn)條件、方法及步驟 上機(jī)編程之前應(yīng)熟悉課程相應(yīng)的部分,實(shí)驗(yàn)原理及相關(guān)的數(shù)據(jù)結(jié)構(gòu)。六、實(shí)驗(yàn)正文#include "stdafx.h"#include "windows.h"#include "stdio.h"#include "string.h"#include "stdlib.h"/#include "math.h"LRESULT CALLBACK WndProc(HWND hwnd,UINT messgae,WPARAM wPar

28、am,LPARAM lParam);int WINAPI WinMain (HINSTANCE hThisInst, HINSTANCE hPrevInst,LPSTR lpszCmdLine, int nCmdShow)static TCHAR szAppName = TEXT("畫-圖ª?"); WNDCLASS ws;HWND hWnd;MSG msg;ws.style = 0;ws.lpfnWndProc = WndProc;ws.cbClsExtra = 0;ws.cbWndExtra = 0;ws.hInstance = hThisInst;ws.hI

29、con = LoadIcon(NULL, IDI_HAND);ws.hCursor = LoadCursor(NULL,IDC_CROSS);ws.hbrBackground = (HBRUSH) GetStockObject(WHITE_BRUSH);ws.lpszMenuName = NULL;ws.lpszClassName = szAppName;if(!RegisterClass(&ws)return -1;hWnd = CreateWindow(szAppName,TEXT("我¨°的Ì?畫-圖ª?"),WS_OV

30、ERLAPPEDWINDOW,100,200,640,480,NULL,NULL,hThisInst,NULL);ShowWindow(hWnd,nCmdShow);UpdateWindow(hWnd);while(GetMessage(&msg,NULL,0,0)TranslateMessage(&msg);DispatchMessage(&msg);return msg.wParam;LRESULT CALLBACK WndProc(HWND hwnd,UINT messgae,WPARAM wParam,LPARAM lParam)HDC hdc;PAINTSTR

31、UCT ps;HPEN hPen;HBRUSH hbrush;POINT pt=500,300,600,180,500,100;POINT pm=100,400,200,400,250,313.4,200,226.8,100,226.8,50,313.4;switch(messgae)case WM_PAINT:hdc=BeginPaint(hwnd,&ps);SetMapMode(hdc,MM_ANISOTROPIC); /直¡À線?hPen=CreatePen(PS_SOLID,4,RGB(255,255,0);/黃?色¦?畫-筆À¨ºSelectObject(hdc,hPen);MoveToEx(hdc,50,50,NULL); LineTo(hdc,300,50);/多¨¤線?段? hPen=CreatePen(PS_SOLID,4,RGB(255,0,255);/紫Á?色¦?畫-筆

溫馨提示

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

評(píng)論

0/150

提交評(píng)論