Windows API程式設計(一)最基礎的知識介紹:Windows程式設計基礎
阿新 • • 發佈:2018-12-26
主要內容簡介:
1. Windows 程式設計基礎:開發環境和開發過程。
2. Windows事件驅動模型和訊息機制。
3. Windows的資源:圖示、游標、選單、點陣圖等。
4. Windows繪圖:圖形和文字的顯示。
5. 對話方塊和控制元件。
6. 靜態庫和動態庫。
7. Windows的記憶體管理。
8. Windows檔案系統。
9. Windows的程序管理。
10. Windows的執行緒和執行緒同步。
- Windows應用程式的型別
1) 控制檯應用(console application)
本身沒有自己獨立的視窗,完全在Windows控制檯視窗中執行。
如下圖所示即為控制檯:
cd 改變目錄
碟符驅動,不能使用cd,切換碟符:(碟符:回車)例如:F:回車
md:建立目錄
rd:刪除目錄(只能是空目錄)
dir:檢視檔案樹
dsw:工作空間檔案
ncb、opt檔案
dsp檔案:價值相當於makefile
Debug:可除錯
Release:不可除錯,速度快
pch:預編譯標頭檔案
obj:目標檔案
2) 視窗應用
本身擁有獨立的視窗介面,通過各種介面元素和使用者互動。
3) 靜態庫
副檔名為.lib。
4) 動態庫
執行時,動態的尋找庫,又叫共享庫。副檔名為.dll。(so:share object)
5) 四種應用程式的對比
控制檯應用
入口函式:main
生成檔案:.exe
執行方式:在控制檯視窗以字元執行。
視窗應用
入口函式:WinMain
生成檔案:.exe
執行方式:在自己的視窗中以圖形方式執行。
靜態庫
入口函式:NULL
生成檔案:.lib
執行方式:不可執行,其中程式碼在連結被複制到呼叫模組中。
動態庫
入口函式:DLLMain
生成檔案:.dll,匯入庫:.lib
執行方式:不可獨立執行,其中的程式碼被可執行程式在執行階段呼叫。 - Windows開發工具
1) 整合開發環境(IDE)
C/C++ - 程式語言
VC - 微軟提供的C/C++語言整合開發環境
Visual Studio - 由VC/VB/VI等組成的產品包
VC1.5 - Win16
VC2.0 - Win32 —- Windows95
VC5.0 – 在Visual Studio 97中
VC6.0 - 在Visual Studio 98中,穩定
VC7.0/8.0/9.0/10.0
2) 工具鏈
編譯器:cl.exe
聯結器:link.exe
資源編譯器:rc.exe
3) Windows SDK (Platform SDK) = 庫 + 標頭檔案 + 文件 VC5.0後不需單裝
執行時間庫:(在系統目錄中)
user32.dll – 視窗、 訊息、 資源
gdi32.dll – 圖形繪製
kernel32.dll – 程序、 執行緒、 記憶體管理
每個dll中封裝一套函式 —- APIs —- 系統呼叫
匯入庫:(在庫目錄下)每個lib和每個dll庫相對應
user32.lib – 視窗、 訊息、 資源
gdi32.lib – 圖形繪製
kernel32.lib – 程序、 執行緒、 記憶體管理
標頭檔案:(在開發環境目錄下)
windef.h:型別定義和巨集定義
winuser.h:宣告user32.dll的函式
wingdi.h:宣告gdi32.dll的函式
winbase.h:宣告kernel32.dll的函式
winnt.h:支援UNICODE字符集
….
windows.h:包含了一組最常用的標頭檔案等等