



下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 操作系統(tǒng) 實(shí)驗(yàn)報(bào)告實(shí)驗(yàn)名稱(chēng):面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言的API訪問(wèn)班 級(jí):姓 名:學(xué) 號(hào):類(lèi) 型:實(shí)驗(yàn)地點(diǎn):日 期:一、實(shí)驗(yàn)?zāi)康模?. 理解操作系統(tǒng)接口的概念,理解程序接口和系統(tǒng)調(diào)用2. 熟練使用API應(yīng)用程序接口函數(shù),3. 比較程序接口和系統(tǒng)調(diào)用的區(qū)別和適用環(huán)境4. 了解WINDOWS 的動(dòng)態(tài)鏈接庫(kù)和應(yīng)用程序接口;了解WINDOWS應(yīng)用程序接口(API)函數(shù)的使用過(guò)程;掌握在面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言中利用API訪問(wèn)操作系統(tǒng)的方法。二、實(shí)驗(yàn)環(huán)境:1. PC機(jī)一臺(tái)(VC、C、VB等編程環(huán)境)三、實(shí)驗(yàn)內(nèi)容和要求:1、使用若干個(gè)程序接口,實(shí)現(xiàn)一定的用戶(hù)訪問(wèn)要求2、通過(guò)系統(tǒng)調(diào)用實(shí)現(xiàn):獲取本機(jī)操作系統(tǒng)版本號(hào)3、
2、通過(guò)系統(tǒng)調(diào)用實(shí)現(xiàn):修改本機(jī)“計(jì)算機(jī)名”4、分析和理解所使用的系統(tǒng)調(diào)用以及所涉及的數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)準(zhǔn)備:了解什么是動(dòng)態(tài)鏈接、動(dòng)態(tài)連接庫(kù)、動(dòng)態(tài)鏈接的過(guò)程、WINDOWS提供的API函數(shù)的作用、常用的API函數(shù)庫(kù)有那幾個(gè)、應(yīng)用程序接口的使用方法(如如何聲明、調(diào)用API的方式等)四、實(shí)驗(yàn)步驟:理解操作系統(tǒng)接口的概念,理解程序接口和系統(tǒng)調(diào)用通過(guò)系統(tǒng)調(diào)用實(shí)現(xiàn):獲取本機(jī)操作系統(tǒng)版本號(hào),修改本機(jī)“計(jì)算機(jī)名”#include using namespace std;#include void getversion() OSVERSIONINFO os; os.dwOSVersionInfoSize=sizeof(o
3、s); GetVersionEx(&os); if(os.dwMajorVersion=5&os.dwMinorVersion=0) cout n該計(jì)算機(jī)的操作系統(tǒng)為:Windows 2000 版本號(hào)為: os.dwBuildNumber endl; else if(os.dwMajorVersion=5&os.dwMinorVersion=1) cout n該計(jì)算機(jī)的操作系統(tǒng)為:Windows XP 版本號(hào)為: os.dwBuildNumber endl; else cout n該計(jì)算機(jī)的操作系統(tǒng)為: 其他版本 版本號(hào)為: os.dwBuildNumber endl; void getnam
4、e() const int nBufSize=MAX_COMPUTERNAME_LENGTH+1; TCHAR chBufnBufSize; DWORD dwRet=nBufSize; GetComputerName(chBuf,&dwRet); cout該計(jì)算機(jī)名稱(chēng)為:chBufendl; void setname() cout輸入需要修改的新計(jì)算機(jī)名,只在重啟后生效: chBuf; if(SetComputerName(chBuf) cout n修改成功,重啟后生效,如果未生效 檢查系統(tǒng)是否有還原保護(hù)endl; else cout n修改失敗!請(qǐng)檢查輸入計(jì)算機(jī)名是否為非法字符。請(qǐng)重新輸入新
5、的計(jì)算機(jī)名:endl; goto newcname; void main() getversion(); getname(); setname(); 五、實(shí)驗(yàn)結(jié)果與分析(含程序、數(shù)據(jù)記錄及分析和實(shí)驗(yàn)總結(jié)等):應(yīng)用程序接口(英語(yǔ):Application Programming Interface,簡(jiǎn)稱(chēng):API),又稱(chēng)為應(yīng)用編程接口,就是軟件系統(tǒng)不同組成部分銜接的約定。由于近年來(lái)軟件的規(guī)模日益龐大,常常會(huì)需要把復(fù)雜的系統(tǒng)劃分成小的組成部分,編程接口的設(shè)計(jì)十分重要。程序設(shè)計(jì)的實(shí)踐中,編程接口的設(shè)計(jì)首先要使軟件系統(tǒng)的職責(zé)得到合理劃分。良好的接口設(shè)計(jì)可以降低系統(tǒng)各部分的相互依賴(lài),提高組成單元的內(nèi)聚性,降
6、低組成單元間的耦合程度,進(jìn)而提高系統(tǒng)的維護(hù)性和擴(kuò)展性。API又分為(Windows、Linux、Unix等系統(tǒng)的)系統(tǒng)級(jí)API,及非操作系統(tǒng)級(jí)的自定義API。作為一種有效的代碼封裝模式,微軟Windows的API開(kāi)發(fā)模式已經(jīng)為許多商業(yè)應(yīng)用開(kāi)發(fā)的公司所借鑒,并開(kāi)發(fā)出某些商業(yè)應(yīng)用系統(tǒng)的API函數(shù)予以發(fā)布,方便第三方進(jìn)行功能擴(kuò)展。如Google、蘋(píng)果電腦公司,以及諾基亞等手機(jī)開(kāi)發(fā)的API等等。面向?qū)ο笳Z(yǔ)言的APIen:List of Java APIs庫(kù)與框架的APIWindows API微軟Windows的DirectXSimple DirectMedia Layer(SDL)API與協(xié)議en:L
7、DAP Application Program InterfaceAPI與設(shè)備接口PC BIOS調(diào)用接口ASPI for SCSI device interfacingWeb APIWeb serviceGoogle地圖的APIMediaWiki API六:思考題:1、 API的作用API是應(yīng)用程序接口,它是提供給用戶(hù)用來(lái)編程的,它的特點(diǎn)是代碼的不可以見(jiàn)行,是操作系統(tǒng)最基本的東西,它構(gòu)成了系統(tǒng)的內(nèi)核環(huán)境,所以通過(guò)API我們可以在系統(tǒng)的最底層進(jìn)行編程,可以通過(guò)它來(lái)對(duì)計(jì)算機(jī)硬件操作。2、 修改本機(jī)“計(jì)算機(jī)名”是否成功?如果不成功原因是什么。成功。如果不成功的原因有:l 計(jì)算機(jī)之間的物理連接不正常。
8、l 所有計(jì)算機(jī)上都安裝的TCP/IP協(xié)議不能工作正常,有問(wèn)題。 l API函數(shù)調(diào)用的代碼有問(wèn)題3、 獲取本機(jī)操作系統(tǒng)版本號(hào)的系統(tǒng)調(diào)用函數(shù)有兩個(gè),它們的區(qū)別是什么?Windows API中有兩個(gè)函數(shù)可以得到系統(tǒng)版本信息:GetVersion和GetVersionExGetVersion這個(gè)函數(shù)曾經(jīng)困擾了很多程序員,其本來(lái)設(shè)計(jì)的是在DWORD返回值中用低位的那個(gè)字表示MS-DOS的版本號(hào),高位的那個(gè)字表示W(wǎng)indows版本號(hào)。對(duì)于每個(gè)字來(lái)說(shuō),高位字節(jié)代表主要版本號(hào),低位字節(jié)代表次要版本號(hào)??墒且?yàn)榫帉?xiě)此函數(shù)的程序員犯了一個(gè)錯(cuò)誤,使得此函數(shù)返回的Windows版本號(hào)顛倒了(即把主要版本號(hào)放到了低位字節(jié),而次要版本號(hào)放到了高位字節(jié))。當(dāng)發(fā)現(xiàn)此錯(cuò)誤的時(shí)候已
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- GB/T 16262.2-2025信息技術(shù)抽象語(yǔ)法記法一(ASN.1)第2部分:信息客體規(guī)范
- 筆記重點(diǎn)2025年證券從業(yè)資格證考試試題及答案
- 長(zhǎng)期投入的證券從業(yè)資格證試題及答案
- 項(xiàng)目團(tuán)隊(duì)績(jī)效管理的考試題型分析試題及答案
- 探索注冊(cè)會(huì)計(jì)師考試的行業(yè)背景與變化趨勢(shì)試題及答案
- 2025年證券從業(yè)資格理解與運(yùn)用試題及答案
- 財(cái)務(wù)報(bào)告審核技巧試題及答案2025
- 注冊(cè)會(huì)計(jì)師考試學(xué)術(shù)研究對(duì)提高專(zhuān)業(yè)素養(yǎng)的貢獻(xiàn)探討試題及答案
- 項(xiàng)目目標(biāo)與設(shè)計(jì)思路的有效結(jié)合試題及答案
- 員工心理健康與支持措施計(jì)劃
- 義務(wù)教育勞動(dòng)教育課程標(biāo)準(zhǔn)(2022版)考試題庫(kù)(含答案)
- 壓力容器設(shè)計(jì)質(zhì)量手冊(cè)+記錄表卡
- JGJ3-2010 高層建筑混凝土結(jié)構(gòu)技術(shù)規(guī)程
- JT-T-1184-2018城市公共汽電車(chē)企業(yè)運(yùn)營(yíng)成本測(cè)算規(guī)范
- 18籃球的體前變向換手運(yùn)球
- JBT 14585-2024 信號(hào)蝶閥(正式版)
- JGJ107-2016鋼筋機(jī)械連接技術(shù)規(guī)程
- (高清版)WST 402-2024 臨床實(shí)驗(yàn)室定量檢驗(yàn)項(xiàng)目參考區(qū)間的制定
- 圍墻拆除工程施工方案
- 性發(fā)育異常疾病課件
- 清水河儲(chǔ)能電站施工方案設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論