第02課 - Win32編程基礎(chǔ)知識(shí)
《第02課 - Win32編程基礎(chǔ)知識(shí)》由會(huì)員分享,可在線閱讀,更多相關(guān)《第02課 - Win32編程基礎(chǔ)知識(shí)(47頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、WindowsWindows程序設(shè)計(jì)系列程序設(shè)計(jì)系列 基礎(chǔ)知識(shí)基礎(chǔ)知識(shí) 作者:李星華作者:李星華 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 綱目綱目 代碼規(guī)范代碼規(guī)范 1 入口函數(shù)入口函數(shù) 2 Win32 API簡(jiǎn)介簡(jiǎn)介 3 MSDN的應(yīng)用的應(yīng)用 4 2 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范 3 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范 良好的編程風(fēng)格是提高程序可靠性非常重要的手良好的編程風(fēng)格是提高程序可靠性非常重要的手段,也是大型項(xiàng)目多人合作開發(fā)的技術(shù)基礎(chǔ)。通段,也是大型項(xiàng)目多人合作開發(fā)的技術(shù)基礎(chǔ)。通過規(guī)范定義來(lái)避免不好的編程風(fēng)
2、格,增強(qiáng)程序的過規(guī)范定義來(lái)避免不好的編程風(fēng)格,增強(qiáng)程序的可讀性,便于自己和他人理解。代碼規(guī)范,針對(duì)可讀性,便于自己和他人理解。代碼規(guī)范,針對(duì)于不同的企業(yè)來(lái)說各不相同,追其根源,都源于于不同的企業(yè)來(lái)說各不相同,追其根源,都源于匈牙利命名法。匈牙利命名法。 4 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-變量命名變量命名 變量命名變量命名原則:變量名屬性類型對(duì)象描述原則:變量名屬性類型對(duì)象描述,其中每一對(duì)象的名稱都要求有明確含義,可以,其中每一對(duì)象的名稱都要求有明確含義,可以取對(duì)象名字全稱或名字的一部分。命名要基于容取對(duì)象名字全稱或名字的一部分。命名要基于容易記憶容易理解的
3、原則。保證名字的連貫性是非易記憶容易理解的原則。保證名字的連貫性是非常重要的。常重要的。 5 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-變量命名變量命名 6 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-變量命名變量命名 命名必須具有實(shí)際的意義,形式為命名必須具有實(shí)際的意義,形式為xMaxValue,x由數(shù)據(jù)類型或?qū)傩圆糠纸M成(如果由數(shù)據(jù)類型或?qū)傩圆糠纸M成(如果x為整型,為整型,變量命名為:變量命名為:iMaxValue),),Max、Value表表示連續(xù)意義字符串(由描述部分確定),如果連示連續(xù)意義字符串(由描述部分確定),如果連續(xù)意義字符串有
4、多個(gè),則每個(gè)具有意義的字符串續(xù)意義字符串有多個(gè),則每個(gè)具有意義的字符串,首字母需大寫(像,首字母需大寫(像iMaxValue中的“中的“M”與與“V”)。)。 m_ 類成員變量類成員變量 m_iVal , m_bFlag g_ 全局變量全局變量 g_iMsg , g_bFlag s_ 靜態(tài)變量靜態(tài)變量 s_iCount, s_bFlag 局部變量中可采用如下幾個(gè)通用變量:局部變量中可采用如下幾個(gè)通用變量:iTemp ,iResult,i,j(一般用于循環(huán)變量)。(一般用于循環(huán)變量)。 7 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-常量命名和宏定義常量命名和宏定義 常量
5、和宏定義必須具有一定的實(shí)際意義:常量和宏定義必須具有一定的實(shí)際意義: 常量和宏定義必須全部以大寫字母來(lái)撰寫,中間常量和宏定義必須全部以大寫字母來(lái)撰寫,中間可根據(jù)意義的連續(xù)性用下劃線連接,每一條定義可根據(jù)意義的連續(xù)性用下劃線連接,每一條定義的右側(cè)必須在的右側(cè)必須在24個(gè)位置處有一簡(jiǎn)單的注釋,說個(gè)位置處有一簡(jiǎn)單的注釋,說明其作用;明其作用; 資源名字定義格式:資源名字定義格式: 菜單:菜單: IDM_XX或者或者CM_XX 位圖:位圖: IDB_XX 對(duì)話框:對(duì)話框: IDD_XX 字符串:字符串: IDS_XX 8 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-函數(shù)命名函數(shù)
6、命名 第一個(gè)字母必須使用大寫字母,要求用大小寫字第一個(gè)字母必須使用大寫字母,要求用大小寫字母組合規(guī)范函數(shù)命名,必要時(shí)可用下劃線間隔,母組合規(guī)范函數(shù)命名,必要時(shí)可用下劃線間隔,示例如下:示例如下: int GetValue(); void* Word_GetApp(); 9 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-結(jié)構(gòu)體命結(jié)構(gòu)體命 結(jié)構(gòu)體類型命名必須全部用大寫字母,原則上前結(jié)構(gòu)體類型命名必須全部用大寫字母,原則上前面以下劃線開始;結(jié)構(gòu)體變量命名必須用大小寫面以下劃線開始;結(jié)構(gòu)體變量命名必須用大小寫字母組合,第一個(gè)字母必須使用大寫字母,必要字母組合,第一個(gè)字母必須使用大
7、寫字母,必要時(shí)可用下劃線間隔。全局?jǐn)?shù)據(jù)定義只需注意其用時(shí)可用下劃線間隔。全局?jǐn)?shù)據(jù)定義只需注意其用途。途。 10 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-結(jié)構(gòu)體命結(jié)構(gòu)體命 typedef struct char szProductName20; char szAuthor20; char szReleaseDate16; char szVersion10; unsigned long MaxTables; unsigned long UsedTables; DBS_DATABASE; DBS_DATABASE GdataBase; 11 Windows程序設(shè)計(jì)程序設(shè)計(jì)
8、-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-控件的命名控件的命名 用小寫前綴表示類別:用小寫前綴表示類別: fm 窗口窗口 cmd 按鈕按鈕 cob combo,下拉式列表框,下拉式列表框 txt 文本輸入框文本輸入框 lab labal,標(biāo)簽,標(biāo)簽 img image,圖象,圖象 pic picture grd Grid,網(wǎng)格,網(wǎng)格 scr 滾動(dòng)條滾動(dòng)條 lst 列表框列表框 frm fram 12 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-文件頭的注釋模板文件頭的注釋模板 /* / FILE : Demo_09.h /* / POWER : Copyright (c)
9、2012 for XXX. / AUTHOR : 2012-2-7 8:37 Create by lixinghua for functions. / VERSION : V1.0.0.1 / NOTE : 此文件中含有此文件中含有XXX類,各類之間的主次關(guān)系,主要功能,類,各類之間的主次關(guān)系,主要功能, / 或潛在的問題。以及全局變量或函數(shù)或潛在的問題。以及全局變量或函數(shù) 的作用。的作用。 /* / 13 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-文件頭的注釋模板文件頭的注釋模板 每行字符不要超出每行字符不要超出80個(gè)字符(“個(gè)字符(“/”加上“”加上“*”的總長(zhǎng)度
10、為的總長(zhǎng)度為80個(gè)字符;個(gè)字符; “FILE”為文件名;”為文件名; “POWER”為版權(quán)信息,為固定模式無(wú)需修改”為版權(quán)信息,為固定模式無(wú)需修改; “AUTHOR”為作者信息,需要時(shí)間的寫法;”為作者信息,需要時(shí)間的寫法; “VERSION”為版本信息,版本說明見“引用”為版本信息,版本說明見“引用四四: 關(guān)于版本控制”;關(guān)于版本控制”; “NOTE”為本文件中存在的程序功能進(jìn)行說明”為本文件中存在的程序功能進(jìn)行說明。 14 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-類的注釋模板類的注釋模板 /= / NAME : XX類類 /= / LIST : void / A
11、UTHOR : 2012-2-6 11:18 Create by lixinghua for functions. / VERSION : V1.0.0.1 / NOTE : 類的使用說明,即主要對(duì)外接口類的使用說明,即主要對(duì)外接口(函數(shù)函數(shù))以及主要功能和潛在問題。以及主要功能和潛在問題。 /= / 15 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-類的注釋模板類的注釋模板 每行字符不要超出每行字符不要超出80個(gè)字符(“個(gè)字符(“/”加上“”加上“=”的總長(zhǎng)度為的總長(zhǎng)度為80個(gè)字符;個(gè)字符; “NAME”為類的名稱;”為類的名稱; “LIST”為實(shí)現(xiàn)的內(nèi)部方法(函數(shù))
12、列表,并”為實(shí)現(xiàn)的內(nèi)部方法(函數(shù))列表,并進(jìn)行說明;進(jìn)行說明; “AUTHOR”為作者信息,需要時(shí)間的寫法;”為作者信息,需要時(shí)間的寫法; “VERSION”為版本信息,版本說明見“引用”為版本信息,版本說明見“引用四四: 關(guān)于版本控制”;關(guān)于版本控制”; “NOTE”為本文件中存在的程序功能進(jìn)行說明”為本文件中存在的程序功能進(jìn)行說明。 16 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-函數(shù)頭的注釋模板函數(shù)頭的注釋模板 /- / FUNC : XX函數(shù)函數(shù) /- / IN : 變量變量1,變量,變量1功能的說明;功能的說明; / 變量變量2,變量,變量2功能的說明;功能
13、的說明; / 變量變量n,變量,變量n功能的說明;功能的說明; / OUT : void / RETURN : void / AUTHOR : 2012-2-6 11:18 Create by lixinghua for functions. / NOTE : 此函數(shù)實(shí)現(xiàn)了此函數(shù)實(shí)現(xiàn)了XX功能,其中調(diào)用了功能,其中調(diào)用了XX函數(shù)。函數(shù)。 /- / 17 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-函數(shù)頭的注釋模板函數(shù)頭的注釋模板 每行字符不要超出每行字符不要超出80個(gè)字符(“個(gè)字符(“/”加上“”加上“-”的總長(zhǎng)度是的總長(zhǎng)度是80個(gè)字符;個(gè)字符; “FUNC”為函數(shù)的名
14、稱;”為函數(shù)的名稱; “IN”為輸入的參數(shù);”為輸入的參數(shù); “OUT”為在函數(shù)內(nèi)部的輸出信息內(nèi)容,即函數(shù)”為在函數(shù)內(nèi)部的輸出信息內(nèi)容,即函數(shù)參數(shù)作為返回值的說明;參數(shù)作為返回值的說明; “RETURN”函數(shù)的返回值(如:函數(shù)成功返”函數(shù)的返回值(如:函數(shù)成功返回回TRUE,否則返回,否則返回FALSE。);。); “AUTHOR”為作者信息,需要時(shí)間的寫法;”為作者信息,需要時(shí)間的寫法; “NOTE”為函數(shù)功能的描述,其中包括:功”為函數(shù)功能的描述,其中包括:功能描述、全局變量描述以及調(diào)用模塊。能描述、全局變量描述以及調(diào)用模塊。 18 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)
15、范代碼規(guī)范-關(guān)于版本控制關(guān)于版本控制 版版 本本 : V1.0.0.1 其中其中 V1.0.0.1 紅色紅色1表示,每修復(fù)一處表示,每修復(fù)一處Bug,在原有,在原有數(shù)值上累加一次。數(shù)值上累加一次。 其中其中 V1.0.0.1 紅色紅色0表示,添加或刪除掉某些功能表示,添加或刪除掉某些功能(函函數(shù)或類數(shù)或類),在原有數(shù)值上累加一次。,在原有數(shù)值上累加一次。 其中其中 V1.0.0.1 紅色紅色0表示,每維護(hù)一次程序,在原有表示,每維護(hù)一次程序,在原有數(shù)值上累加一次。數(shù)值上累加一次。 其中其中 V1.0.0.1 紅色紅色1表示,每一次系統(tǒng)整體的更新,表示,每一次系統(tǒng)整體的更新,包括整個(gè)功能甚至需求
16、的變化更新,在原有數(shù)值上累包括整個(gè)功能甚至需求的變化更新,在原有數(shù)值上累加一次。加一次。 例如例如 V2.20.15.80 表示整體需求或框架升級(jí)過表示整體需求或框架升級(jí)過2次,維護(hù)過次,維護(hù)過20次,共添次,共添加或刪除功能加或刪除功能15次,累計(jì)修改次,累計(jì)修改80次次Bug。 19 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 入口函數(shù)入口函數(shù) 20 Windows 數(shù)據(jù)類型數(shù)據(jù)類型 C C 數(shù)據(jù)類型數(shù)據(jù)類型 Windows Windows 類型類型 charchar CHARCHAR unsigned charunsigned char BYTEBYTE shortshort SH
17、ORTSHORT unsigned shortunsigned short WORD WORD intint INTINT longlong LONGLONG unsigned longunsigned long DWORDDWORD 21 Windows 數(shù)據(jù)類型數(shù)據(jù)類型 C C 數(shù)據(jù)類型數(shù)據(jù)類型 Windows Windows 類型類型 char *char * LPSTR, PSTRLPSTR, PSTR const char *const char * LPCSTR, PCSTRLPCSTR, PCSTR voidvoid VOIDVOID void *void * LPVOIDLPV
18、OID 22 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 HINSTANCE HWND HANDLE HPEN HBRUSH HBITMAP HFONT HDC HRESOURCE HCURSOR Windows Windows 新增數(shù)據(jù)類型:句柄類型新增數(shù)據(jù)類型:句柄類型 * * 23 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 RECT =struct _RECTint left,int top,int right,int bottom POINT=struct _POINTint x,int y SIZE=struct _SIZEint cx,int cy Windows W
19、indows 新增數(shù)據(jù)類型:結(jié)構(gòu)體新增數(shù)據(jù)類型:結(jié)構(gòu)體 * * 24 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 C語(yǔ)言入口函數(shù)語(yǔ)言入口函數(shù) #include int main() printf(“Hello World”); 25 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 C語(yǔ)言入口函數(shù)語(yǔ)言入口函數(shù) 如下程序會(huì)有什么樣的結(jié)果?如下程序會(huì)有什么樣的結(jié)果? #include int main() for(int i = 0; i argc; +i) printf(“%s”, argvi); 26 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 C語(yǔ)言入口函數(shù)語(yǔ)言入口函數(shù) void
20、 main() int main(int argc, char* argv) argc 作用是什么?作用是什么? Argv 作用是什么?作用是什么? argc是命令行總的參數(shù)個(gè)數(shù);是命令行總的參數(shù)個(gè)數(shù); argv是是argc個(gè)參數(shù),其中第個(gè)參數(shù),其中第0個(gè)參數(shù)是程序個(gè)參數(shù)是程序的全名,以后的參數(shù)是命令行后面跟的用戶輸入的全名,以后的參數(shù)是命令行后面跟的用戶輸入的參數(shù)。的參數(shù)。 27 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 C語(yǔ)言入口函數(shù)語(yǔ)言入口函數(shù) 例如例如 dir /w /p c:windows argc = 4 argv0 = dir argv1 = /w argv2 = /p
21、argv3 = c:windows 28 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 Windows 入口函數(shù)入口函數(shù) int APIENTRY WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow ) MessageBox(NULL,”你好你好”,”警告警告”,MB_OK); 29 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 APIENTRY 編譯器用來(lái)識(shí)別程序入口函數(shù)的標(biāo)志。編譯器用來(lái)識(shí)別程序入口函數(shù)的標(biāo)志。 30 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程
22、 HINSTANCE-實(shí)例句柄實(shí)例句柄 句柄句柄,是整個(gè),是整個(gè)windows編程的基礎(chǔ),一個(gè)句柄編程的基礎(chǔ),一個(gè)句柄是指使用的一個(gè)唯一的整數(shù)值,是指一個(gè)四字節(jié)是指使用的一個(gè)唯一的整數(shù)值,是指一個(gè)四字節(jié)長(zhǎng)的數(shù)值,用于標(biāo)志應(yīng)用程序中的不同對(duì)象和同長(zhǎng)的數(shù)值,用于標(biāo)志應(yīng)用程序中的不同對(duì)象和同類對(duì)象中的不同的實(shí)例,諸如,一個(gè)窗口,按鈕類對(duì)象中的不同的實(shí)例,諸如,一個(gè)窗口,按鈕,圖標(biāo),滾動(dòng)條,輸出設(shè)備,控件或者文件等。,圖標(biāo),滾動(dòng)條,輸出設(shè)備,控件或者文件等。應(yīng)用程序能夠通過句柄訪問相應(yīng)的對(duì)象的信息。應(yīng)用程序能夠通過句柄訪問相應(yīng)的對(duì)象的信息。 句柄不是一個(gè)指針,程序不能利用它句柄來(lái)直接句柄不是一個(gè)指針,
23、程序不能利用它句柄來(lái)直接閱讀文件中的信息。閱讀文件中的信息。 31 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 HINSTANCE-實(shí)例句柄實(shí)例句柄 句柄在句柄在Windows 中使用非常頻繁,它通常是中使用非常頻繁,它通常是一個(gè)一個(gè)32位的整數(shù),代表著一個(gè)具體對(duì)象。位的整數(shù),代表著一個(gè)具體對(duì)象。 句柄就像每位同學(xué)的學(xué)號(hào)一樣,唯一標(biāo)識(shí)著窗口。句柄就像每位同學(xué)的學(xué)號(hào)一樣,唯一標(biāo)識(shí)著窗口。 32 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 HINSTANCE-實(shí)例句柄實(shí)例句柄 HINSTANCE hInstance 進(jìn)程的實(shí)例句柄,在本程序中,唯一標(biāo)識(shí)進(jìn)程。 HINSTANCE hPr
24、evInstance 指向應(yīng)用程序的前一個(gè)進(jìn)程句柄,在32操作系統(tǒng)該參數(shù)為NULL,該參數(shù)僅僅被用于16位操作系統(tǒng)。 33 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 命令行參數(shù)命令行參數(shù) LPSTR lpCmdLine 命令行緩沖區(qū),不包括程序的名字。 不難猜出,如下代碼輸出什么吧???不難猜出,如下代碼輸出什么吧??? MessageBox(NULL, lpCmdLine, “溫馨提示溫馨提示”, MB_OK); 34 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 窗口顯示狀態(tài)窗口顯示狀態(tài) int nCmdShow 窗口是否顯示標(biāo)志 SW_HIDE SW_SHOW 35 Window
25、s程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 參數(shù)意義參數(shù)意義 第一個(gè)參數(shù)第一個(gè)參數(shù)hInstance是一個(gè)唯一的數(shù)值或句是一個(gè)唯一的數(shù)值或句柄。它與當(dāng)前程序相關(guān)。柄。它與當(dāng)前程序相關(guān)。 第二個(gè)參數(shù)第二個(gè)參數(shù)hPrevInstance只對(duì)只對(duì) 16 位位 Windows 是重要的。而在是重要的。而在 Windows 95 和和 Windows NT 中這兩個(gè)參數(shù)是沒有意義的中這兩個(gè)參數(shù)是沒有意義的 第三個(gè)參數(shù)第三個(gè)參數(shù)lpCmdLine是一個(gè)字符串,它包含是一個(gè)字符串,它包含了傳給程序的任何參數(shù)。這個(gè)參數(shù)的類型了傳給程序的任何參數(shù)。這個(gè)參數(shù)的類型 LPSTR 是是 Windows 中一種寫法,表示一個(gè)
26、中一種寫法,表示一個(gè)指向字符串的指向字符串的 32 位指針。位指針。 第四個(gè)參數(shù)第四個(gè)參數(shù)nCmdShow指明程序開始運(yùn)行的狀指明程序開始運(yùn)行的狀態(tài)是正常狀態(tài)還是最大化狀態(tài)或最小化狀態(tài)。態(tài)是正常狀態(tài)還是最大化狀態(tài)或最小化狀態(tài)。 36 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 Windows API簡(jiǎn)介簡(jiǎn)介 37 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 什么是什么是API API:Application Programming Interface 操作系統(tǒng)提供給開發(fā)者的應(yīng)用程序編程接口。操作系統(tǒng)提供給開發(fā)者的應(yīng)用程序編程接口。 用戶使用該接口可以調(diào)動(dòng)操作系統(tǒng)資源,實(shí)現(xiàn)自用戶使用
27、該接口可以調(diào)動(dòng)操作系統(tǒng)資源,實(shí)現(xiàn)自己的應(yīng)用程序的功能。己的應(yīng)用程序的功能。 使用時(shí):必須包含使用時(shí):必須包含Windows.h頭文件。頭文件。 38 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 API簡(jiǎn)介簡(jiǎn)介 39 應(yīng)用程序應(yīng)用程序APIAPI接口接口操作命令操作命令操作系統(tǒng)操作系統(tǒng)硬件系統(tǒng)硬件系統(tǒng)Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 API簡(jiǎn)介簡(jiǎn)介 Windows API是在安裝完操作系統(tǒng)之后,就是在安裝完操作系統(tǒng)之后,就已經(jīng)存在了,它是以已經(jīng)存在了,它是以DLL文件的形式存在。常用文件的形式存在。常用的的Win32函數(shù)庫(kù)所需要的函數(shù)庫(kù)所需要的DLL文件如下:文件如下: G
28、DI32.DLL:屏幕顯示及打印功能的函數(shù)集;:屏幕顯示及打印功能的函數(shù)集; USER32.DLL:鼠標(biāo)、鍵盤、通信端口、聲音、時(shí)鐘:鼠標(biāo)、鍵盤、通信端口、聲音、時(shí)鐘功能的函數(shù)集;功能的函數(shù)集; KERNEL32.DLL:文件及內(nèi)存管理(核心部分)功能:文件及內(nèi)存管理(核心部分)功能的函數(shù)集;的函數(shù)集; MPR.DLL:Windows32網(wǎng)絡(luò)接口庫(kù);網(wǎng)絡(luò)接口庫(kù); ADVAPI32.DLL:Windows32、ADVAPI32核心部件核心部件 40 API簡(jiǎn)介 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 MSDN的應(yīng)用的應(yīng)用 41 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 MSDN
29、 MSDN 的全稱是的全稱是 Microsoft Developer Network,是微軟公司面向軟件開發(fā)者的一種,是微軟公司面向軟件開發(fā)者的一種信息服務(wù)。它是一本非常全面的開發(fā)手冊(cè),也是信息服務(wù)。它是一本非常全面的開發(fā)手冊(cè),也是一本發(fā)發(fā)寶典。一本發(fā)發(fā)寶典。 42 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 MSDN 43 43 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 MSDN MSDN文檔中包含所有的文檔中包含所有的API的函數(shù)原型、使的函數(shù)原型、使用方法介紹以及相應(yīng)的代碼示例,它是一本超大用方法介紹以及相應(yīng)的代碼示例,它是一本超大集合的幫助文檔,也是用戶手冊(cè),同時(shí)也是一本
30、集合的幫助文檔,也是用戶手冊(cè),同時(shí)也是一本非常全面的書籍。非常全面的書籍。 44 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 API 舉例舉例 int MessageBox( HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType); 作用:作用: 彈出警告框。彈出警告框。 MessageBox(0,”你好你好”,”警告警告”,MB_OK); 45 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 作業(yè)作業(yè) 1、根據(jù)你的理解,什么是代碼規(guī)范?、根據(jù)你的理解,什么是代碼規(guī)范? 2、分別寫出、分別寫出C以及以及Windows的入口函數(shù),并的入口函數(shù),并說明各參數(shù)的含義。說明各參數(shù)的含義。 3、什么是、什么是API? 46 人文改變歷史,人文改變歷史, 科技創(chuàng)造未來(lái)!科技創(chuàng)造未來(lái)! 47
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 8乘法口訣 (3)課件
- 創(chuàng)意思考方法
- 新版寧波波特曼大酒店
- 公司財(cái)務(wù)與財(cái)務(wù)預(yù)算
- d商品價(jià)格與消費(fèi)心理
- 191矩形(矩形的判定第1課時(shí))
- 乳腺癌術(shù)后-課件
- 河北NBIoT建設(shè)規(guī)劃
- 藥物外滲的處置
- 《中國(guó)媽媽》鑒賞-課件
- 整式的加減 (2)(教育精品)
- 路面工程監(jiān)督交底
- 廣東語(yǔ)文模擬考試評(píng)講課件
- 《科學(xué)探究:物質(zhì)的密度》課件-(公開課獲獎(jiǎng))2022年滬科版物理-3
- 區(qū)域活動(dòng)與習(xí)慣養(yǎng)成(彭艷潔)