第02課 - Win32編程基礎(chǔ)知識(shí)

上傳人:奔*** 文檔編號(hào):30013546 上傳時(shí)間:2021-10-09 格式:PPT 頁(yè)數(shù):47 大小:1,015KB
收藏 版權(quán)申訴 舉報(bào) 下載
第02課 - Win32編程基礎(chǔ)知識(shí)_第1頁(yè)
第1頁(yè) / 共47頁(yè)
第02課 - Win32編程基礎(chǔ)知識(shí)_第2頁(yè)
第2頁(yè) / 共47頁(yè)
第02課 - Win32編程基礎(chǔ)知識(shí)_第3頁(yè)
第3頁(yè) / 共47頁(yè)

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《第02課 - Win32編程基礎(chǔ)知識(shí)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(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)目多人合作開(kāi)發(fā)的技術(shù)基礎(chǔ)。通段,也是大型項(xiàng)目多人合作開(kāi)發(fā)的技術(shù)基礎(chǔ)。通過(guò)規(guī)范定義來(lái)避免不好的編程風(fēng)

2、格,增強(qiáng)程序的過(guò)規(guī)范定義來(lái)避免不好的編程風(fēng)格,增強(qiáng)程序的可讀性,便于自己和他人理解。代碼規(guī)范,針對(duì)可讀性,便于自己和他人理解。代碼規(guī)范,針對(duì)于不同的企業(yè)來(lái)說(shuō)各不相同,追其根源,都源于于不同的企業(yè)來(lái)說(shuō)各不相同,追其根源,都源于匈牙利命名法。匈牙利命名法。 4 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-變量命名變量命名 變量命名變量命名原則:變量名屬性類(lèi)型對(duì)象描述原則:變量名屬性類(lèi)型對(duì)象描述,其中每一對(duì)象的名稱(chēng)都要求有明確含義,可以,其中每一對(duì)象的名稱(chēng)都要求有明確含義,可以取對(duì)象名字全稱(chēng)或名字的一部分。命名要基于容取對(duì)象名字全稱(chēng)或名字的一部分。命名要基于容易記憶容易理解的

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ù)類(lèi)型或?qū)傩圆糠纸M成(如果由數(shù)據(jù)類(lèi)型或?qū)傩圆糠纸M成(如果x為整型,為整型,變量命名為:變量命名為:iMaxValue),),Max、Value表表示連續(xù)意義字符串(由描述部分確定),如果連示連續(xù)意義字符串(由描述部分確定),如果連續(xù)意義字符串有

4、多個(gè),則每個(gè)具有意義的字符串續(xù)意義字符串有多個(gè),則每個(gè)具有意義的字符串,首字母需大寫(xiě)(像,首字母需大寫(xiě)(像iMaxValue中的“中的“M”與與“V”)。)。 m_ 類(lèi)成員變量類(lèi)成員變量 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í)際意義: 常量和宏定義必須全部以大寫(xiě)字母來(lái)撰寫(xiě),中間常量和宏定義必須全部以大寫(xiě)字母來(lái)撰寫(xiě),中間可根據(jù)意義的連續(xù)性用下劃線(xiàn)連接,每一條定義可根據(jù)意義的連續(xù)性用下劃線(xiàn)連接,每一條定義的右側(cè)必須在的右側(cè)必須在24個(gè)位置處有一簡(jiǎn)單的注釋?zhuān)f(shuō)個(gè)位置處有一簡(jiǎn)單的注釋?zhuān)f(shuō)明其作用;明其作用; 資源名字定義格式:資源名字定義格式: 菜單:菜單: IDM_XX或者或者CM_XX 位圖:位圖: IDB_XX 對(duì)話(huà)框:對(duì)話(huà)框: IDD_XX 字符串:字符串: IDS_XX 8 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-函數(shù)命名函數(shù)

6、命名 第一個(gè)字母必須使用大寫(xiě)字母,要求用大小寫(xiě)字第一個(gè)字母必須使用大寫(xiě)字母,要求用大小寫(xiě)字母組合規(guī)范函數(shù)命名,必要時(shí)可用下劃線(xiàn)間隔,母組合規(guī)范函數(shù)命名,必要時(shí)可用下劃線(xiàn)間隔,示例如下:示例如下: int GetValue(); void* Word_GetApp(); 9 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-結(jié)構(gòu)體命結(jié)構(gòu)體命 結(jié)構(gòu)體類(lèi)型命名必須全部用大寫(xiě)字母,原則上前結(jié)構(gòu)體類(lèi)型命名必須全部用大寫(xiě)字母,原則上前面以下劃線(xiàn)開(kāi)始;結(jié)構(gòu)體變量命名必須用大小寫(xiě)面以下劃線(xiàn)開(kāi)始;結(jié)構(gòu)體變量命名必須用大小寫(xiě)字母組合,第一個(gè)字母必須使用大寫(xiě)字母,必要字母組合,第一個(gè)字母必須使用大

7、寫(xiě)字母,必要時(shí)可用下劃線(xiàn)間隔。全局?jǐn)?shù)據(jù)定義只需注意其用時(shí)可用下劃線(xiàn)間隔。全局?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ī)范-控件的命名控件的命名 用小寫(xiě)前綴表示類(lèi)別:用小寫(xiě)前綴表示類(lèi)別: 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類(lèi),各類(lèi)之間的主次關(guān)系,主要功能,類(lèi),各類(lèi)之間的主次關(guān)系,主要功能, / 或潛在的問(wèn)題。以及全局變量或函數(shù)或潛在的問(wèn)題。以及全局變量或函數(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í)間的寫(xiě)法;”為作者信息,需要時(shí)間的寫(xiě)法; “VERSION”為版本信息,版本說(shuō)明見(jiàn)“引用”為版本信息,版本說(shuō)明見(jiàn)“引用四四: 關(guān)于版本控制”;關(guān)于版本控制”; “NOTE”為本文件中存在的程序功能進(jìn)行說(shuō)明”為本文件中存在的程序功能進(jìn)行說(shuō)明。 14 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-類(lèi)的注釋模板類(lèi)的注釋模板 /= / NAME : XX類(lèi)類(lèi) /= / LIST : void / A

11、UTHOR : 2012-2-6 11:18 Create by lixinghua for functions. / VERSION : V1.0.0.1 / NOTE : 類(lèi)的使用說(shuō)明,即主要對(duì)外接口類(lèi)的使用說(shuō)明,即主要對(duì)外接口(函數(shù)函數(shù))以及主要功能和潛在問(wèn)題。以及主要功能和潛在問(wèn)題。 /= / 15 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-類(lèi)的注釋模板類(lèi)的注釋模板 每行字符不要超出每行字符不要超出80個(gè)字符(“個(gè)字符(“/”加上“”加上“=”的總長(zhǎng)度為的總長(zhǎng)度為80個(gè)字符;個(gè)字符; “NAME”為類(lèi)的名稱(chēng);”為類(lèi)的名稱(chēng); “LIST”為實(shí)現(xiàn)的內(nèi)部方法(函數(shù))

12、列表,并”為實(shí)現(xiàn)的內(nèi)部方法(函數(shù))列表,并進(jìn)行說(shuō)明;進(jìn)行說(shuō)明; “AUTHOR”為作者信息,需要時(shí)間的寫(xiě)法;”為作者信息,需要時(shí)間的寫(xiě)法; “VERSION”為版本信息,版本說(shuō)明見(jiàn)“引用”為版本信息,版本說(shuō)明見(jiàn)“引用四四: 關(guān)于版本控制”;關(guān)于版本控制”; “NOTE”為本文件中存在的程序功能進(jìn)行說(shuō)明”為本文件中存在的程序功能進(jìn)行說(shuō)明。 16 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 代碼規(guī)范代碼規(guī)范-函數(shù)頭的注釋模板函數(shù)頭的注釋模板 /- / FUNC : XX函數(shù)函數(shù) /- / IN : 變量變量1,變量,變量1功能的說(shuō)明;功能的說(shuō)明; / 變量變量2,變量,變量2功能的說(shuō)明;功能

13、的說(shuō)明; / 變量變量n,變量,變量n功能的說(shuō)明;功能的說(shuō)明; / 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、稱(chēng);”為函數(shù)的名稱(chēng); “IN”為輸入的參數(shù);”為輸入的參數(shù); “OUT”為在函數(shù)內(nèi)部的輸出信息內(nèi)容,即函數(shù)”為在函數(shù)內(nèi)部的輸出信息內(nèi)容,即函數(shù)參數(shù)作為返回值的說(shuō)明;參數(shù)作為返回值的說(shuō)明; “RETURN”函數(shù)的返回值(如:函數(shù)成功返”函數(shù)的返回值(如:函數(shù)成功返回回TRUE,否則返回,否則返回FALSE。);。); “AUTHOR”為作者信息,需要時(shí)間的寫(xiě)法;”為作者信息,需要時(shí)間的寫(xiě)法; “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ù)或類(lèi)數(shù)或類(lèi)),在原有數(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í)過(guò)表示整體需求或框架升級(jí)過(guò)2次,維護(hù)過(guò)次,維護(hù)過(guò)20次,共添次,共添加或刪除功能加或刪除功能15次,累計(jì)修改次,累計(jì)修改80次次Bug。 19 Windows程序設(shè)計(jì)程序設(shè)計(jì)-基礎(chǔ)教程基礎(chǔ)教程 入口函數(shù)入口函數(shù) 20 Windows 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 C C 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 Windows Windows 類(lèi)型類(lèi)型 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ù)類(lèi)型數(shù)據(jù)類(lèi)型 C C 數(shù)據(jù)類(lèi)型數(shù)據(jù)類(lèi)型 Windows Windows 類(lèi)型類(lèi)型 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ù)類(lèi)型:句柄類(lèi)型新增數(shù)據(jù)類(lèi)型:句柄類(lèi)型 * * 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ù)類(lèi)型:結(jié)構(gòu)體新增數(shù)據(jù)類(lèi)型:結(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ù)是命令行后面跟的用戶(hù)輸入的全名,以后的參數(shù)是命令行后面跟的用戶(hù)輸入的參數(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ì)象和同類(lèi)對(duì)象中的不同的實(shí)例,諸如,一個(gè)窗口,按鈕類(lèi)對(duì)象中的不同的實(shí)例,諸如,一個(gè)窗口,按鈕,圖標(biāo),滾動(dòng)條,輸出設(shè)備,控件或者文件等。,圖標(biāo),滾動(dòng)條,輸出設(shè)備,控件或者文件等。應(yīng)用程序能夠通過(guò)句柄訪(fǎng)問(wèn)相應(yīng)的對(duì)象的信息。應(yīng)用程序能夠通過(guò)句柄訪(fǎng)問(wèn)相應(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ù)是沒(méi)有意義的中這兩個(gè)參數(shù)是沒(méi)有意義的 第三個(gè)參數(shù)第三個(gè)參數(shù)lpCmdLine是一個(gè)字符串,它包含是一個(gè)字符串,它包含了傳給程序的任何參數(shù)。這個(gè)參數(shù)的類(lèi)型了傳給程序的任何參數(shù)。這個(gè)參數(shù)的類(lèi)型 LPSTR 是是 Windows 中一種寫(xiě)法,表示一個(gè)

26、中一種寫(xiě)法,表示一個(gè)指向字符串的指向字符串的 32 位指針。位指針。 第四個(gè)參數(shù)第四個(gè)參數(shù)nCmdShow指明程序開(kāi)始運(yùn)行的狀指明程序開(kāi)始運(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)提供給開(kāi)發(fā)者的應(yīng)用程序編程接口。操作系統(tǒng)提供給開(kāi)發(fā)者的應(yīng)用程序編程接口。 用戶(hù)使用該接口可以調(diào)動(dòng)操作系統(tǒng)資源,實(shí)現(xiàn)自用戶(hù)使用

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)、鍵盤(pán)、通信端口、聲音、時(shí)鐘:鼠標(biāo)、鍵盤(pán)、通信端口、聲音、時(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 的全稱(chēng)是的全稱(chēng)是 Microsoft Developer Network,是微軟公司面向軟件開(kāi)發(fā)者的一種,是微軟公司面向軟件開(kāi)發(fā)者的一種信息服務(wù)。它是一本非常全面的開(kāi)發(fā)手冊(cè),也是信息服務(wù)。它是一本非常全面的開(kāi)發(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)的代碼示例,它是一本超大集合的幫助文檔,也是用戶(hù)手冊(cè),同時(shí)也是一本

30、集合的幫助文檔,也是用戶(hù)手冊(cè),同時(shí)也是一本非常全面的書(shū)籍。非常全面的書(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、分別寫(xiě)出、分別寫(xiě)出C以及以及Windows的入口函數(shù),并的入口函數(shù),并說(shuō)明各參數(shù)的含義。說(shuō)明各參數(shù)的含義。 3、什么是、什么是API? 46 人文改變歷史,人文改變歷史, 科技創(chuàng)造未來(lái)!科技創(chuàng)造未來(lái)! 47

展開(kāi)閱讀全文
溫馨提示:
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. 裝配圖網(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ì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話(huà):18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶(hù)上傳的文檔直接被用戶(hù)下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!