一、Windows API 的功能分類
1、系統基本服務
檔案系統:對檔案的操作等;磁碟分卷的管理等。
記憶體管理:記憶體配置等,分頁機制。
進程、線程和模組
裝置IO、驅動程式控制
調試與錯誤處理
Windows系統資訊:包括註冊表操作,及其它基本資料。
處理序間通訊:共用檔案,訊息,郵槽,管道,網際網路共用
定時器與訊息機制
2、系統管理
管理主控台介面,程式安裝,系統復原,任務調度等。
3、使用者介面
包括兩方面:Windows Shell和Windows圖形化使用者介面
4、映像和多媒體
包括GDI,OpenGL,DircetX等.
5、網路
TCP/UDP Socket,HTTP等。
6、系統安全
系統的授權與認證,登入,許可權管理,加密,安全管理原則等內容。
7、其它
如資料存放區和訪問,資料庫
訊息與協作
Web開發
二、核心DLL
Kernel32.dll系統基本服務的API
User32.dll 圖形化使用者介面API
Gdi32.dll Windows圖形引擎中的介面函數,應用程式設計介面
Windows系統的C標準庫函數介面主要存在於crtdll.dll中。(c runtime)
三、Unicode和多位元組
● Unicode:16位來表示一個字元,共65535種字元。
● 傳統字元集Windows ASNI:使用8位或相鄰的兩個8位元據組合在一起來表示特殊的語言字元。Windows採用ASNI字元的擴充方式,如果一個位元組是負數,則將其後續的了一個位元組組合在一起表示一個字元。這種編碼方式也稱為“多位元組”字元集。
LPSTR A 32-bit pointer to a character string.
LPTSTR A 32-bit pointer to a character string that is portable for Unicode and DBCS.
LPWSTR A 32-bit pointer to a string of 16-bit Unicode characters, which MAY be null-terminated.
DBCS double-byte character set
● Unicode與ASCII的轉換
WideCharToMultiByte Unicode > ASCII
MultiByteToWideChar ASCII > Unicode
UnicodeToBytes
參考[1] 精通Windows API 函數、介面、編程執行個體