API函式

API函式

API函式,作業系統除了協調應用程式的執行、記憶體分配、系統資源管理外,同時也是一個很大的服務中心,調用這個服務中心的各種服務(每一種服務是一個函式),可以幫助應用程式達到開啟視窗、描繪圖形、使用周邊設備的目的,由於這些函式服務的對象是應用程式(Application),所以稱之為Application Programming Interface,簡稱API函式。

API概述

定義

作為一個編程初學者來說,API函式也許是一個時常耳聞卻感覺有些神秘的東西。單看它複雜的語法,就足令人望而生畏,但是任何事物在我們深入了解它之前,總是會有這種感覺的。我們這篇API入門教程的目的,就是要把API函式的來龍去脈告訴大家,破除對API函式的畏懼,使它成為我們編程的好助手。

例子

大家可能在許多書上看到過API的英文全稱(Application Programming Interface),WIN32 API也就是Microsoft Windows 32位平台的應用程式編程接口。對這個定義的理解,需要追溯到作業系統的發展歷史上,當Windows作業系統開始占據主導地位的時候,開發Windows平台下的應用程式成為人們的需要。而在Windows程式設計領域處於發展的初期,Windows程式設計師所能使用的編程工具唯有API函式,這些函式是Windows提供給應用程式與作業系統的接口,他們猶如“積木塊”一樣,可以搭建出各種界面豐富,功能靈活的應用程式。所以可以認為API函式是構築整個Windows框架的基石,在它的下面是Windows的作業系統核心,而它的上面則是所有的華麗的Windows應用程式。

但是,那時的Windows程式開發還是比較複雜的工作,程式設計師必須熟記一大堆常用的API函式,而且還得對Windows作業系統有深入的了解。然而隨著軟體技術的不斷發展,在Windows平台上出現了很多優秀的可視化編程環境,程式設計師可以採用“所見即所得”的編程方式來開發具有精美用戶界面和功能強大的應用程式。

這些優秀可視化編程環境操作簡單、界面友好(諸如VB、VC++、DELPHI等),在這些工具中提供了大量的類庫和各種控制項,它們替代了API的神秘功能,事實上這些類庫和控制項都是構架在WIN32 API函式基礎之上的,是封裝了的API函式的集合。它們把常用的API函式的組合在一起成為一個控制項或類庫,並賦予其方便的使用方法,所以極大的加速了Windows應用程式開發的過程。有了這些控制項和類庫,程式設計師便可以把主要精力放在程式整體功能的設計上,而不必過於關注技術細節。

實際上如果我們要開發出更靈活、更實用、更具效率的應用程式,必然要涉及到直接使用API函式,雖然類庫和控制項使應用程式的開發簡單的多,但它們只提供Windows的一般功能,對於比較複雜和特殊的功能來說,使用類庫和控制項是非常難以實現的,這時就需要採用API函式來實現。

這也是API函式使用的場合,所以我們對待API函式不必刻意研究每一個函式的用法,那也是不現實的(能用的到的API函式有幾千個呢)。正如某位大蝦所說:API不要去學,在需要的時候去查API幫助就足夠了。

函式大全

網路函式

WNetAddConnection 創建同一個網路資源的永久性連線

WNetAddConnection2 創建同一個網路資源的連線

WNetAddConnection3 創建同一個網路資源的連線

WNetCancelConnection 結束一個網路連線

WNetCancelConnection2 結束一個網路連線

WNetCloseEnum 結束一次枚舉操作

WNetConnectionDialog 啟動一個標準對話框,以便建立同網路資源的連線

WNetDisconnectDialog 啟動一個標準對話框,以便斷開同網路資源的連線

WNetEnumResource 枚舉網路資源

WNetGetConnection 獲取本地或已連線的一個資源的網路名稱

WNetGetLastError 獲取網路錯誤的擴展錯誤信息

WNetGetUniversalName 獲取網路中一個檔案的遠程名稱以及/或者UNC(統一命名規範)名稱

WNetGetUser 獲取一個網路資源用以連線的名字

WNetOpenEnum 啟動對網路資源進行枚舉的過程

訊息函式

BroadcastSystemMessage 將一條系統訊息廣播給系統中所有的頂級視窗

GetMessagePos 取得訊息佇列中上一條訊息處理完畢時的滑鼠指針螢幕位置

GetMessageTime 取得訊息佇列中上一條訊息處理完畢時的時間

PostMessage 將一條訊息投遞到指定視窗的訊息佇列

PostThreadMessage 將一條訊息投遞給應用程式

RegisterWindowMessage 獲取分配給一個字串標識符的訊息編號

ReplyMessage 答覆一個訊息

SendMessage 調用一個視窗的視窗函式,將一條訊息發給那個視窗

SendMessageCallback 將一條訊息發給視窗

SendMessageTimeout 向視窗傳送一條訊息

SendNotifyMessage 向視窗傳送一條訊息

檔案處理函式

CloseHandle 關閉一個核心對象。其中包括檔案、檔案映射、進程、執行緒、安全和同步對象等

CompareFileTime 對比兩個檔案的時間

CopyFile 複製檔案

CreateDirectory 創建一個新目錄

CreateFile 打開和創建檔案、管道、郵槽、通信服務、設備以及控制台

CreateFileMapping 創建一個新的檔案映射對象

DeleteFile 刪除指定檔案

DeviceIoControl 對設備執行指定的操作

DosDateTimeToFileTime 將DOS日期和時間值轉換成一個 win32 FILETIME 值

FileTimeToDosDateTime 將一個 win32 FILETIME 值轉換成DOS日期和時間值

FileTimeToLocalFileTime 將一個FILETIME結構轉換成本地時間

FileTimeToSystemTime 根據一個FILETIME結構的內容,裝載一個SYSTEMTIME結構

FindClose 關閉由FindFirstFile函式創建的一個搜尋句柄

FindFirstFile 根據檔案名稱查找檔案

FindNextFile 根據調用FindFirstFile函式時指定的一個檔案名稱查找下一個檔案

FlushFileBuffers 針對指定的檔案句柄,刷新內部檔案緩衝區

FlushViewOfFile 將寫入檔案映射緩衝區的所有數據都刷新到磁碟

GetBinaryType 判斷檔案是否可以執行

GetCompressedFileSize 判斷一個壓縮檔案在磁碟上實際占據的位元組數

GetCurrentDirectory 在一個緩衝區中裝載當前目錄

GetDiskFreeSpace 獲取與一個磁碟的組織有關的信息,以及了解剩餘空間的容量

GetDiskFreeSpaceEx 獲取與一個磁碟的組織以及剩餘空間容量有關的信息

GetDriveType 判斷一個磁碟驅動器的類型

GetExpandedName 取得一個壓縮檔案的全名

GetFileAttributes 判斷指定檔案的屬性

GetFileInformationByHandle 這個函式提供了獲取檔案信息的一種機制

GetFileSize 判斷檔案長度

GetFileTime 取得指定檔案的時間信息

GetFileType 在給出檔案句柄的前提下,判斷檔案類型

GetFileVersionInfo 從支持版本標記的一個模組里獲取檔案版本信息

GetFileVersionInfoSize 針對包含了版本資源的一個檔案,判斷容納檔案版本信息需要一個多大的緩衝區

GetFullPathName 獲取指定檔案的完整路徑名

GetLogicalDrives 判斷系統中存在哪些邏輯驅動器字母

GetLogicalDriveStrings 獲取一個字串,其中包含了當前所有邏輯驅動器的根驅動器路徑

GetOverlappedResult 判斷一個重疊操作當前的狀態

GetPrivateProfileInt 為初始化檔案(.ini檔案)中指定的條目獲取一個整數值

GetPrivateProfileSection 獲取指定小節(在.ini檔案中)所有項名和值的一個列表

GetPrivateProfileString 為初始化檔案中指定的條目取得字串

GetProfileInt 取得win.ini初始化檔案中指定條目的一個整數值

GetProfileSection 獲取指定小節(在win.ini檔案中)所有項名和值的一個列表

GetProfileString 為win.ini初始化檔案中指定的條目取得字串

GetShortPathName 獲取指定檔案的短路徑名

GetSystemDirectory 取得Windows系統目錄(即System目錄)的完整路徑名

GetTempFileName 這個函式包含了一個臨時檔案的名字,它可由應用程式使用

GetTempPath 獲取為臨時檔案指定的路徑

GetVolumeInformation 獲取與一個磁碟卷有關的信息

GetWindowsDirectory 獲取Windows目錄的完整路徑名

hread 參考lread

hwrite 參考lwrite函式

lclose 關閉指定的檔案

lcreat 創建一個檔案

llseek 設定檔案中進行讀寫的當前位置

LockFile 鎖定檔案的某一部分,使其不與其他應用程式共享

LockFileEx 與LockFile相似,只是它提供了更多的功能

lopen 以二進制模式打開指定的檔案

lread 將檔案中的數據讀入記憶體緩衝區

lwrite 將數據從記憶體緩衝區寫入一個檔案

LZClose 關閉由LZOpenFile 或 LZInit函式打開的一個檔案

LZCopy 複製一個檔案

LZInit 這個函式用於初始化內部緩衝區

LZOpenFile 該函式能執行大量不同的檔案處理,而且兼容於壓縮檔案

LZRead 將數據從檔案讀入記憶體緩衝區

LZSeek 設定一個檔案中進行讀寫的當前位置

MapViewOfFile 將一個檔案映射對象映射到當前應用程式的地址空間

MoveFile 移動檔案

OpenFile 這個函式能執行大量不同的檔案操作

OpenFileMapping 打開一個現成的檔案映射對象

QueryDosDevice 在Windows NT中,DOS設備名會映射成NT系統設備名。該函式可判斷當前的設備映射情況

ReadFile 從檔案中讀出數據

ReadFileEx 與ReadFile相似,只是它只能用於異步讀操作,並包含了一個完整的回調

RegCloseKey 關閉系統註冊表中的一個項(或鍵)

RegConnectRegistry 訪問遠程系統的部分註冊表

RegCreateKey 在指定的項下創建或打開一個項

RegCreateKeyEx 在指定項下創建新項的更複雜的方式。在Win32環境中建議使用這個函式

RegDeleteKey 刪除現有項下方一個指定的子項

RegDeleteValue 刪除指定項下方的一個值

RegEnumKey 枚舉指定項的子項。在Win32環境中應使用RegEnumKeyEx

RegEnumKeyEx 枚舉指定項下方的子項

RegEnumValue 枚舉指定項的值

RegFlushKey 將對項和它的子項作出的改動實際寫入磁碟

RegGetKeySecurity 獲取與一個註冊表項有關的安全信息

RegLoadKey 從以前用RegSaveKey函式創建的一個檔案里裝載註冊表信息

RegNotifyChangeKeyValue 註冊表項或它的任何一個子項發生變化時,用這個函式提供一種通知機制

RegOpenKey 打開一個現有的註冊表項

RegOpenKeyEx 打開一個現有的項。在win32下推薦使用這個函式

RegQueryInfoKey 獲取與一個項有關的信息

RegQueryValue 取得指定項或子項的默認(未命名)值

RegQueryValueEx 獲取一個項的設定值

RegReplaceKey 用一個磁碟檔案保存的信息替換註冊表信息;並創建一個備份,在其中包含當前註冊表信息

RegRestoreKey 從一個磁碟檔案恢復註冊表信息

RegSaveKey 將一個項以及它的所有子項都保存到一個磁碟檔案

RegSetKeySecurity 設定指定項的安全特性

RegSetValue 設定指定項或子項的默認值

RegSetValueEx 設定指定項的值

RegUnLoadKey 卸載指定的項以及它的所有子項

RemoveDirectory 刪除指定目錄

SearchPath 查找指定檔案

SetCurrentDirectory 設定當前目錄

SetEndOfFile 針對一個打開的檔案,將當前檔案位置設為檔案末尾

SetFileAttributes 設定檔案屬性

SetFilePointer 在一個檔案中設定當前的讀寫位置

SetFileTime 設定檔案的創建、訪問及上次修改時間

SetHandleCount 這個函式不必在win32下使用;即使使用,也不會有任何效果

SetVolumeLabel 設定一個磁碟的卷標(Label)

SystemTimeToFileTime 根據一個FILETIME結構的內容,載入一個SYSTEMTIME結構

UnlockFile 解除對一個檔案的鎖定

UnlockFileEx 解除對一個檔案的鎖定

UnmapViewOfFile 在當前應用程式的記憶體地址空間解除對一個檔案映射對象的映射

VerFindFile 用這個函式決定一個檔案應安裝到哪裡

VerInstallFile 用這個函式安裝一個檔案

VerLanguageName 這個函式能根據16位語言代碼獲取一種語言的名稱

VerQueryValue 這個函式用於從版本資源中獲取信息

WriteFile 將數據寫入一個檔案

WriteFileEx 與WriteFile類似,只是它只能用於異步寫操作,並包括了一個完整的回調

WritePrivateProfileSection 為一個初始化檔案(.ini)中指定的小節設定所有項名和值

WritePrivateProfileString 在初始化檔案指定小節內設定一個字串

WriteProfileSection 為Win.ini初始化檔案中一個指定的小節設定所有項名和值袁煥珂

WriteProfileString 在Win.ini初始化檔案指定小節內設定一個字串

列印函式

AbortDoc 取消一份文檔的列印

AbortPrinter 刪除與一台印表機關聯在一起的緩衝檔案

AddForm 為印表機的表單列表添加一個新表單

AddJob 用於獲取一個有效的路徑名,以便用它為作業創建一個後台列印檔案。它也會為作業分配一個作業編號

AddMonitor 為系統添加一個印表機監視器

AddPort 啟動“添加連線埠”對話框,允許用戶在系統可用連線埠列表中加入一個新連線埠

AddPrinter 在系統中添加一台新印表機

AddPrinterConnection 連線指定的印表機

AddPrinterDriver 為指定的系統添加一個列印驅動程式

AddPrintProcessor 為指定的系統添加一個列印處理器

AddPrintProvidor 為系統添加一個列印供應商

AdvancedDocumentProperties 啟動印表機文檔設定對話框

ClosePrinter 關閉一個打開的印表機對象

ConfigurePort 針對指定的連線埠,啟動一個連線埠配置對話框

ConnectToPrinterDlg 啟動連線印表機對話框,用它同訪問網路的印表機連線

DeleteForm 從印表機可用表單列表中刪除一個表單

DeleteMonitor 刪除指定的列印監視器

DeletePort 啟動“刪除連線埠”對話框,允許用戶從當前系統刪除一個連線埠

DeletePrinter 將指定的印表機標誌為從系統中刪除

DeletePrinterConnection 刪除與指定印表機的連線

DeletePrinterDriver 從系統刪除一個印表機驅動程式

DeletePrintProcessor 從指定系統刪除一個列印處理器

DeletePrintProvidor 從系統中刪除一個列印供應商

DeviceCapabilities 利用這個函式可獲得與一個設備的能力有關的信息

DocumentProperties 印表機配置控制函式

EndDocAPI 結束一個成功的列印作業

EndDocPrinter 在後台列印程式的級別指定一個文檔的結束

EndPage 用這個函式完成一個頁面的列印,並準備設備場景,以便列印下一個頁

EndPagePrinter 指定一個頁在列印作業中的結尾

EnumForms 枚舉一台印表機可用的表單

EnumJobs 枚舉列印佇列中的作業

EnumMonitors 枚舉可用的列印監視器

EnumPorts 枚舉一個系統可用的連線埠

EnumPrinterDrivers 枚舉指定系統中已安裝的印表機驅動程式

EnumPrinters 枚舉系統中安裝的印表機

EnumPrintProcessorDatatypes 枚舉由一個列印處理器支持的數據類型

EnumPrintProcessors 枚舉系統中可用的列印處理器

Escape 設備

控制函式

FindClosePrinterChangeNotification 關閉用FindFirstPrinterChangeNotification函式獲取的一個印表機通告對象

FindFirstPrinterChangeNotification 創建一個新的改變通告對象,以便我們注意印表機狀態的各種變化

FindNextPrinterChangeNotification 用這個函式判斷觸發一次印表機改變通告信號的原因

FreePrinterNotifyInfo 釋放由FindNextPrinterChangeNotification函式分配的一個緩衝區

GetForm 取得與指定表單有關的信息

GetJob 獲取與指定作業有關的信息

GetPrinter 取得與指定印表機有關的信息

GetPrinterData 為印表機設定註冊表配置信息

GetPrinterDriver 針對指定的印表機,獲取與印表機驅動程式有關的信息

GetPrinterDriverDirectory 判斷指定系統中包含了印表機驅動程式的目錄是什麼

GetPrintProcessorDirectory 判斷指定系統中包含了印表機處理器驅動程式及檔案的目錄

OpenPrinter 打開指定的印表機,並獲取印表機的句柄

PrinterMessageBox 在擁有指定列印作業的系統上顯示一個印表機出錯訊息框

PrinterProperties 啟動印表機屬性對話框,以便對印表機進行配置

ReadPrinter 從印表機讀入數據

ResetDC 重設一個設備場景

ResetPrinter 改變指定印表機的默認數據類型及文檔設定

ScheduleJob 提交一個要列印的作業

SetAbortProc 為Windows指定取消函式的地址

SetForm 為指定的表單設定信息

SetJob 對一個列印作業的狀態進行控制

SetPrinter 對一台印表機的狀態進行控制

SetPrinterData 設定印表機的註冊表配置信息

StartDoc 開始一個列印作業

StartDocPrinter 在後台列印的級別啟動一個新文檔

StartPage 列印一個新頁前要先調用這個函式

StartPagePrinter 在列印作業中指定一個新頁的開始

WritePrinter 將傳送目錄中的數據寫入印表機

字型函式

AddFontResource 在Windows系統中添加一種字型資源

CreateFont 用指定的屬性創建一種邏輯字型

CreateFontIndirect 用指定的屬性創建一種邏輯字型

CreateScalableFontResource 為一種TureType字型創建一個資源檔案,以便能用API函式AddFontResource將其加入Windows系統

DrawText 將文本描繪到指定的矩形中

DrawTextEx 與DrawText相似,只是加入了更多的功能

EnumFontFamilies 列舉指定設備可用的字型

EnumFontFamiliesEx 列舉指定設備可用的字型

EnumFonts 列舉指定設備可用的字型

ExtTextOut 經過擴展的文本描繪函式。也請參考SetTextAlign函式

GetAspectRatioFilterEx 用SetMapperFlags要求Windows只選擇與設備當前縱橫比相符的光柵字型時,本函式可判斷縱橫比大小

GetCharABCWidths 判斷TureType字型中一個或多個字元的A-B-C大小

GetCharABCWidthsFloat 查詢一種字型中一個或多個字元的A-B-C尺寸

GetCharacterPlacement 該函式用於了解如何用一個給定的字元顯示一個字串

GetCharWidth 調查字型中一個或多個字元的寬度

GetFontData 接收一種可縮放字型檔的數據

GetFontLanguageInfo 返回選入指定設備場景中的字型的信息

GetGlyphOutline 取得TureType字型中構成一個字元的曲線信息

GetKerningPairs 取得指定字型的字距信息

GetOutlineTextMetrics 接收與TureType字型內部特徵有關的詳細信息

GetRasterizerCaps 了解系統是否有能力支持可縮放的字型

GetTabbedTextExtent 判斷一個字串占據的範圍,同時考慮制表站擴充的因素

GetTextAlign 接收一個設備場景當前的文本對齊標誌

GetTextCharacterExtra 判斷額外字元間距的當前值

GetTextCharset 接收當前選入指定設備場景的字型的字元集標識符

GetTextCharsetInfo 獲取與當前選定字型的字元集有關的詳細信息

GetTextColor 判斷當前字型顏色。通常也稱為“前景色”

GetTextExtentExPoint 判斷要填入指定區域的字元數量。也用一個數組裝載每個字元的範圍信息

GetTextExtentPoint 判斷一個字串的大小(範圍)

GetTextFace 獲取一種字型的字樣名

GetTextMetrics 獲取與選入一種設備場景的物理字型有關的信息

GrayString 描繪一個以灰色顯示的字串。通常由Windows用於標識禁止狀態

PolyTextOut 描繪一系列字串

RemoveFontResource 從Windows系統中刪除一種字型資源

SetMapperFlags Windows對字型進行映射時,可用該函式選擇與目標設備的縱橫比相符的光柵字型

SetTextAlign 設定文本對齊方式,並指定在文本輸出過程中使用設備場景的當前位置

SetTextCharacterExtra 描繪文本的時候,指定要在字元間插入的額外間距

SetTextColor 設定當前文本顏色。這種顏色也稱為“前景色”

SetTextJustification 通過指定一個文本行應占據的額外空間,可用這個函式對文本進行兩端對齊處理

TabbedTextOut 支持制表站的一個文本描繪函式

TextOut 文本繪圖函式

選單函式

AppendMenu 在指定的選單里添加一個選單項

CheckMenuItem 複選或撤消複選指定的選單條目

CheckMenuRadioItem 指定一個選單條目被複選成“單選”項目

CreateMenu 創建新選單

CreatePopupMenu 創建一個空的彈出式選單

DeleteMenu 刪除指定的選單條目

DestroyMenu 刪除指定的選單

DrawMenuBar 為指定的視窗重畫選單

EnableMenuItem 允許或禁止指定的選單條目

GetMenu 取得視窗中一個選單的句柄

GetMenuCheckMarkDimensions 返回一個選單複選符的大小

GetMenuContextHelpId 取得一個選單的幫助場景ID

GetMenuDefaultItem 判斷選單中的哪個條目是默認條目

GetMenuItemCount 返回選單中條目(選單項)的數量

GetMenuItemID 返回位於選單中指定位置處的條目的選單ID

GetMenuItemInfo 取得(接收)與一個選單條目有關的特定信息

GetMenuItemRect 在一個矩形中裝載指定選單條目的螢幕坐標信息

GetMenuState 取得與指定選單條目狀態有關的信息

GetMenuString 取得指定選單條目的字串

GetSubMenu 取得一個彈出式選單的句柄,它位於選單中指定的位置

GetSystemMenu 取得指定視窗的系統選單的句柄

HiliteMenuItem 控制頂級選單條目的加亮顯示狀態

InsertMenu 在選單的指定位置處插入一個選單條目,並根據需要將其他條目向下移動

InsertMenuItem 插入一個新選單條目

IsMenu 判斷指定的句柄是否為一個選單的句柄

LoadMenu 從指定的模組或應用程式實例中載入一個選單

LoadMenuIndirect 載入一個選單

MenuItemFromPoint 判斷哪個選單條目包含了螢幕上一個指定的點

ModifyMenu 改變選單條目

RemoveMenu 刪除指定的選單條目

SetMenu 設定視窗選單

SetMenuContextHelpId 設定一個選單的幫助場景ID

SetMenuDefaultItem 將一個選單條目設為默認條目

SetMenuItemBitmaps 設定一幅特定點陣圖,令其在指定的選單條目中使用,代替標準的複選符號(√)

SetMenuItemInfo 為一個選單條目設定指定的信息

TrackPopupMenu 在螢幕的任意地方顯示一個彈出式選單

TrackPopupMenuEx 與TrackPopupMenu相似,只是它提供了額外的功能

內部函式

硬體與系統

ActivateKeyboardLayout 激活一個新的鍵盤布局。鍵盤布局定義了按鍵在一種物理性鍵盤上的位置與含義

Beep 用於生成簡單的聲音

CharToOem 將一個字串從ANSI字元集轉換到OEM字元集

ClipCursor 將指針限制到指定區域

ConvertDefaultLocale 將一個特殊的地方標識符轉換成真實的地方ID

CreateCaret 根據指定的信息創建一個插入符(游標),並將它選定為指定視窗的默認插入符

DestroyCaret 清除(破壞)一個插入符

EnumCalendarInfo 枚舉在指定“地方”環境中可用的日曆信息

EnumDateFormats 列舉指定的“當地”設定中可用的長、短日期格式

EnumSystemCodePages 枚舉系統中已安裝或支持的代碼頁

EnumSystemLocales 枚舉系統已經安裝或提供支持的“地方”設定

EnumTimeFormats 枚舉一個指定的地方適用的時間格式

ExitWindowsEx 退出windows,並用特定的選項重新啟動

ExpandEnvironmentStrings 擴充環境字串

FreeEnvironmentStrings 翻譯指定的環境字串塊

GetACP 判斷正在生效的ANSI代碼頁

GetAsyncKeyState 判斷函式調用時指定虛擬鍵的狀態

GetCaretBlinkTime 判斷插入符游標的閃爍頻率

GetCaretPos 判斷插入符的當前位置

GetClipCursor 取得一個矩形,用於描述為滑鼠指針規定的剪下區域

GetCommandLine 獲得指向當前命令行緩衝區的一個指針

GetComputerName 取得這台計算機的名稱

GetCPInfo 取得與指定代碼頁有關的信息

GetCurrencyFormat 針對指定的“地方”設定,根據貨幣格式格式化一個數字

GetCursor 獲取選擇的滑鼠指針的句柄

GetCursorPos 獲取滑鼠指針的當前位置

GetDateFormat 針對指定的“當地”格式,對一個系統日期進行格式化

GetDoubleClickTime 判斷連續兩次滑鼠單擊之間會被處理成雙擊事件的間隔時間

GetEnvironmentStrings 為包含了當前環境字串設定的一個記憶體塊分配和返回一個句柄

GetEnvironmentVariable 取得一個環境變數的值

GetInputState 判斷是否存在任何待決(等待處理)的滑鼠或鍵盤事件

GetKBCodePage 由GetOEMCP取代,兩者功能完全相同

GetKeyboardLayout 取得一個句柄,描述指定應用程式的鍵盤布局

GetKeyboardLayoutList 獲得系統適用的所有鍵盤布局的一個列表

GetKeyboardLayoutName 取得當前活動鍵盤布局的名稱

GetKeyboardState 取得鍵盤上每個虛擬鍵當前的狀態

GetKeyboardType 了解與正在使用的鍵盤有關的信息

GetKeyNameText 在給出掃描碼的前提下,判斷鍵名

GetKeyState 針對已處理過的按鍵,在最近一次輸入信息時,判斷指定虛擬鍵的狀態

GetLastError 針對之前調用的api函式,用這個函式取得擴展錯誤信息

GetLocaleInfo 取得與指定“地方”有關的信息

GetLocalTime 取得本地日期和時間

GetNumberFormat 針對指定的“地方”,按特定的格式格式化一個數字

GetOEMCP 判斷在OEM和ANSI字元集間轉換的windows代碼頁

GetQueueStatus 判斷應用程式訊息佇列中待決(等待處理)的訊息類型

GetSysColor 判斷指定windows顯示對象的顏色

GetSystemDefaultLangID 取得系統的默認語言ID

GetSystemDefaultLCID 取得當前的默認系統“地方”

GetSystemInfo 取得與底層硬體平台有關的信息

GetSystemMetrics 返回與windows環境有關的信息

GetSystemPowerStatus 獲得與當前系統電源狀態有關的信息

GetSystemTime 取得當前系統時間,這個時間採用的是“協同世界時間”(即UTC,也叫做GMT)格式

GetSystemTimeAdjustment 使內部系統時鐘與一個外部的時鐘信號源同步

GetThreadLocale 取得當前執行緒的地方ID

GetTickCount 用於獲取自windows啟動以來經歷的時間長度(毫秒)

GetTimeFormat 針對當前指定的“地方”,按特定的格式格式化一個系統時間

GetTimeZoneInformation 取得與系統時區設定有關的信息

GetUserDefaultLangID 為當前用戶取得默認語言ID

GetUserDefaultLCID 取得當前用戶的默認“地方”設定

GetUserName 取得當前用戶的名字

GetVersion 判斷當前運行的Windows和DOS版本

GetVersionEx 取得與平台和作業系統有關的版本信息

HideCaret 在指定的視窗隱藏插入符(游標)

IsValidCodePage 判斷一個代碼頁是否有效

IsValidLocale 判斷地方標識符是否有效

keybd_event 這個函式模擬了鍵盤行動

LoadKeyboardLayout 載入一個鍵盤布局

MapVirtualKey 根據指定的映射類型,執行不同的掃描碼和字元轉換

MapVirtualKeyEx 根據指定的映射類型,執行不同的掃描碼和字元轉換

MessageBeep 播放一個系統聲音。系統聲音的分配方案是在控制臺里決定的

mouse_event 模擬一次滑鼠事件

OemKeyScan 判斷OEM字元集中的一個ASCII字元的掃描碼和Shift鍵狀態

OemToChar 將OEM字元集的一個字串轉換到ANSI字元集

SetCaretBlinkTime 指定插入符(游標)的閃爍頻率

SetCaretPos 指定插入符的位置

SetComputerName 設定新的計算機名

SetCursor 將指定的滑鼠指針設為當前指針

SetCursorPos 設定指針的位置

SetDoubleClickTime 設定連續兩次滑鼠單擊之間能使系統認為是雙擊事件的間隔時間

SetEnvironmentVariable 將一個環境變數設為指定的值

SetKeyboardState 設定每個虛擬鍵當前在鍵盤上的狀態

SetLocaleInfo 改變用戶“地方”設定信息

SetLocalTime 設定當前地方時間

SetSysColors 設定指定視窗顯示對象的顏色

SetSystemCursor 改變任何一個標準系統指針

SetSystemTime 設定當前系統時間

SetSystemTimeAdjustment 定時添加一個校準值使內部系統時鐘與一個外部的時鐘信號源同步

SetThreadLocale 為當前執行緒設定地方

SetTimeZoneInformation 設定系統時區信息

ShowCaret 在指定的視窗里顯示插入符(游標)

ShowCursor 控制滑鼠指針的可視性

SwapMouseButton 決定是否互換滑鼠左右鍵的功能

SystemParametersInfo 獲取和設定數量眾多的windows系統參數

SystemTimeToTzSpecificLocalTime 將系統時間轉換成地方時間

ToAscii 根據當前的掃描碼和鍵盤信息,將一個虛擬鍵轉換成ASCII字元

ToUnicode 根據當前的掃描碼和鍵盤信息,將一個虛擬鍵轉換成Unicode字元

UnloadKeyboardLayout 卸載指定的鍵盤布局

VkKeyScan 針對Windows字元集中一個ASCII字元,判斷虛擬鍵碼和Shift鍵的狀態

進程和執行緒

CancelWaitableTimer 這個函式用於取消一個可以等待下去的計時器操作

CallNamedPipe 這個函式由一個希望通過管道通信的一個客戶進程調用

ConnectNamedPipe 指示一台伺服器等待下去,直至客戶機同一個命名管道連線

CreateEvent 創建一個事件對象

CreateMailslot 創建一個郵路。返回的句柄由郵路伺服器使用(收件人)

CreateMutex 創建一個互斥體(MUTEX)

CreateNamedPipe 創建一個命名管道。返回的句柄由管道的伺服器端使用

CreatePipe 創建一個匿名管道

CreateProcess 創建一個新進程(比如執行一個程式)

CreateSemaphore 創建一個新的信號機

CreateWaitableTimer 創建一個可等待的計時器對象

DisconnectNamedPipe 斷開一個客戶與一個命名管道的連線

DuplicateHandle 在指出一個現有系統對象當前句柄的情況下,為那個對象創建一個新句柄

ExitProcess 中止一個進程

FindCloseChangeNotification 關閉一個改動通知對象

FindExecutable 查找與一個指定檔案關聯在一起的程式的檔案名稱

FindFirstChangeNotification 創建一個檔案通知對象。該對象用於監視檔案系統發生的變化

FindNextChangeNotification 重設一個檔案改變通知對象,令其繼續監視下一次變化

FreeLibrary 釋放指定的動態程式庫

GetCurrentProcess 獲取當前進程的一個偽句柄

GetCurrentProcessId 獲取當前進程一個的標識符

GetCurrentThread 獲取當前執行緒的一個偽句柄

GetCurrentThreadId 獲取當前執行緒一個的執行緒標識符

GetExitCodeProces 獲取一個已中斷進程的退出代碼

GetExitCodeThread 獲取一個已中止執行緒的退出代碼

GetHandleInformation 獲取與一個系統對象句柄有關的信息

GetMailslotInfo 獲取與一個郵路有關的信息

GetModuleFileName 獲取一個已裝載模板的完整路徑名稱

GetModuleHandle 獲取一個應用程式或動態程式庫的模組句柄

GetPriorityClass 獲取特定進程的優先權別

GetProcessShutdownParameters 調查系統關閉時一個指定的進程相對於其它進程的關閉早遲情況

GetProcessTimes 獲取與一個進程的經過時間有關的信息

GetProcessWorkingSetSize 了解一個應用程式在運行過程中實際向它交付了多大容量的記憶體

GetSartupInfo 獲取一個進程的啟動信息

GetThreadPriority 獲取特定執行緒的優先權別

GetTheardTimes 獲取與一個執行緒的經過時間有關的信息

GetWindowThreadProcessId 獲取與指定視窗關聯在一起的一個進程和執行緒標識符

LoadLibrary 載入指定的動態程式庫,並將它映射到當前進程使用的地址空間

LoadLibraryEx 裝載指定的動態程式庫,並為當前進程把它映射到地址空間

LoadModule 載入一個Windows應用程式,並在指定的環境中運行

MsgWaitForMultipleObjects 等侯單個對象或一系列對象發出信號。如返回條件已經滿足,則立即返回

SetPriorityClass 設定一個進程的優先權別

SetProcessShutdownParameters 在系統關閉期間,為指定進程設定他相對於其它程式的關閉順序

SetProcessWorkingSetSize 設定作業系統實際劃分給進程使用的記憶體容量

SetThreadPriority 設定執行緒的優先權別

ShellExecute 查找與指定檔案關聯在一起的程式的檔案名稱

TerminateProcess 結束一個進程

WinExec 運行指定的程式

12. API之控制項與訊息函式

AdjustWindowRect 給定一種視窗樣式,計算獲得目標客戶區矩形所需的視窗大小

AnyPopup 判斷螢幕上是否存在任何彈出式視窗

ArrangeIconicWindows 排列一個父視窗的最小化子視窗

AttachThreadInput 連線執行緒輸入函式

BeginDeferWindowPos 啟動構建一系列新視窗位置的過程

BringWindowToTop 將指定的視窗帶至視窗列表頂部

CascadeWindows 以層疊方式排列視窗

ChildWindowFromPoint 返回父視窗中包含了指定點的第一個子視窗的句柄

ClientToScreen 判斷視窗內以客戶區坐標表示的一個點的螢幕坐標

CloseWindow 最小化指定的視窗

CopyRect 矩形內容複製

DeferWindowPos 該函式為特定的視窗指定一個新視窗位置

DestroyWindow 清除指定的視窗以及它的所有子視窗

DrawAnimatedRects 描繪一系列動態矩形

EnableWindow 指定的視窗里允許或禁止所有滑鼠及鍵盤輸入

EndDeferWindowPos 同時更新DeferWindowPos調用時指定的所有視窗的位置及狀態

EnumChildWindows 為指定的父視窗枚舉子視窗

EnumThreadWindows 枚舉與指定任務相關的視窗

EnumWindows 枚舉視窗列表中的所有父視窗

EqualRect 判斷兩個矩形結構是否相同

FindWindow 尋找視窗列表中第一個符合指定條件的頂級視窗

FindWindowEx 在視窗列表中尋找與指定條件相符的第一個子視窗

FlashWindow 閃爍顯示指定視窗

GetActiveWindow 獲得活動視窗的句柄

GetCapture 獲得一個視窗的句柄,這個視窗位於當前輸入執行緒,且擁有滑鼠捕獲(滑鼠活動由它接收)

GetClassInfo 取得WNDCLASS結構(或WNDCLASSEX結構)的一個副本,結構中包含了與指定類有關的信息

GetClassLong 取得視窗類的一個Long變數條目

GetClassName 為指定的視窗取得類名

GetClassWord 為視窗類取得一個整數變數

GetClientRect 返回指定視窗客戶區矩形的大小

GetDesktopWindow 獲得代表整個螢幕的一個視窗(桌面視窗)句柄

GetFocus 獲得擁有輸入焦點的視窗的句柄

GetForegroundWindow 獲得前台視窗的句柄

GetLastActivePopup 獲得在一個給定父視窗中最近激活過的彈出式視窗的句柄

GetParent 判斷指定視窗的父視窗

GetTopWindow 搜尋內部視窗列表,尋找隸屬於指定視窗的頭一個視窗的句柄

GetUpdateRect 獲得一個矩形,它描敘了指定視窗中需要更新的那一部分

GetWindow 獲得一個視窗的句柄,該視窗與某源視窗有特定的關係

GetWindowContextHelpId 取得與視窗關聯在一起的幫助場景ID

GetWindowLong 從指定視窗的結構中取得信息

GetWindowPlacement 獲得指定視窗的狀態及位置信息

GetWindowRect 獲得整個視窗的範圍矩形,視窗的框線、標題欄、滾動條及選單等都在這個矩形內

運算函式

點陣圖

BitBlt 將一幅點陣圖從一個設備場景複製到另一個

CopyIcon 製作指定圖示或滑鼠指針的一個副本。這個副本從屬於發出調用的應用程式

CopyImage 複製點陣圖、圖示或指針,同時在複製過程中進行一些轉換工作

CreateBitmap 按照規定的格式創建一幅與設備有關點陣圖

CreateBitmapIndirect 創建一幅與設備有關點陣圖

CreateCompatibleBitmap 創建一幅與設備有關點陣圖,它與指定的設備場景兼容

CreateCursor 創建一個滑鼠指針

CreateDIBitmap 根據一幅與設備無關的點陣圖創建一幅與設備有關的點陣圖

CreateDIBSection 創建一個DIBSection

圖示光柵

CreateIcon 創建一個圖示

CreateIconIndirect 創建一個圖示

DestroyCursor 清除指定的滑鼠指針,並釋放它占用的所有系統資源

DestroyIcon 清除圖示

DrawIcon 在指定的位置畫一個圖示

DrawIconEx 描繪一個圖示或滑鼠指針。與DrawIcon相比,這個函式提供了更多的功能

ExtractAssociatedIcon 判斷一個可執行程式或DLL中是否存在圖示,或是否有圖示與系統註冊表中指定的檔案存在關聯並提取之

ExtractIcon 判斷一個執行檔或DLL中是否有圖示存在,並將其提取出來

GetBitmapBits 將來自點陣圖的二進制位複製到一個緩衝區

GetBitmapDimensionEx 取得一幅點陣圖的寬度和高度

GetDIBColorTable 從選入設備場景的DIBSection中取得顏色表信息

GetDIBits 將來自一幅點陣圖的二進制位複製到一幅與設備無關的點陣圖里

GetIconInfo 取得與圖示有關的信息

GetStretchBltMode 判斷StretchBlt 和 StretchDIBits函式採用的伸縮模式

LoadBitmap 從指定的模組或應用程式實例中載入一幅點陣圖

LoadCursor 從指定的模組或應用程式實例中載入一個滑鼠指針

LoadCursorFromFile 在一個指針檔案或一個動畫指針檔案的基礎上創建一個指針

LoadIcon 從指定的模組或應用程式實例中載入一個圖示

LoadImage 載入一個點陣圖、圖示或指針

MaskBlt 執行複雜的圖象傳輸,同時進行掩模(MASK)處理

PatBlt 在當前選定的刷子的基礎上,用一個圖案填充指定的設備場景

PlgBlt 複製一幅點陣圖,同時將其轉換成一個平行四邊形。利用它可對點陣圖進行旋轉處理

SetBitmapBits 將來自緩衝區的二進制位複製到一幅點陣圖

SetBitmapDimensionEx 設定一幅點陣圖的寬度。以一毫米的十分之一為單位

SetDIBColorTable 設定選入設備場景的一個DIBSection的顏色表信息

SetDIBits 將來自與設備無關點陣圖的二進制位複製到一幅與設備有關的點陣圖里

SetDIBitsToDevice 將一幅與設備無關點陣圖的全部或部分數據直接複製到一個設備

SetStretchBltMode 指定StretchBlt 和 StretchDIBits函式的伸縮模式

StretchBlt 將一幅點陣圖從一個設備場景複製到另一個

StretchDIBits 將一幅與設備無關點陣圖的全部或部分數據直接複製到指定的設備場景

繪圖函式

AbortPath 拋棄選入指定設備場景中的所有路徑。也取消正在進行的任何路徑的創建工作

AngleArc 用一個連線弧畫一條線

Arc 畫一個圓弧

BeginPath 啟動一個路徑分支

CancelDC 取消另一個執行緒里的長時間繪圖操作

Chord 畫一個弦

CloseEnhMetaFile 關閉指定的增強型圖元檔案設備場景,並將新建的圖元檔案返回一個句柄

CloseFigure 描繪到一個路徑時,關閉當前打開的圖形

CloseMetaFile 關閉指定的圖元檔案設備場景,並向新建的圖元檔案返回一個句柄

CopyEnhMetaFile 製作指定增強型圖元檔案的一個副本(拷貝)

CopyMetaFile 製作指定(標準)圖元檔案的一個副本

CreateBrushIndirect 在一個LOGBRUSH數據結構的基礎上創建一個刷子

CreateDIBPatternBrush 用一幅與設備無關的點陣圖創建一個刷子,以便指定刷子樣式(圖案)

CreateEnhMetaFile 創建一個增強型的圖元檔案設備場景

CreateHatchBrush 創建帶有陰影圖案的一個刷子

CreateMetaFile 創建一個圖元檔案設備場景

CreatePatternBrush 用指定了刷子圖案的一幅點陣圖創建一個刷子

CreatePen 用指定的樣式、寬度和顏色創建一個畫筆

CreatePenIndirect 根據指定的LOGPEN結構創建一個畫筆

CreateSolidBrush 用純色創建一個刷子

DeleteEnhMetaFile 刪除指定的增強型圖元檔案

DeleteMetaFile 刪除指定的圖元檔案

DeleteObject 刪除GDI對象,對象使用的所有系統資源都會被釋放

DrawEdge 用指定的樣式描繪一個矩形的框線

DrawEscape 換碼(Escape)函式將數據直接發至顯示設備驅動程式

DrawFocusRect 畫一個焦點矩形

DrawFrameControl 描繪一個標準控制項

DrawState 為一幅圖象或繪圖操作套用各式各樣的效果

Ellipse 描繪一個橢圓,由指定的矩形圍繞

EndPath 停止定義一個路徑

EnumEnhMetaFile 針對一個增強型圖元檔案,列舉其中單獨的圖元檔案記錄

EnumMetaFile 為一個標準的windows圖元檔案枚舉單獨的圖元檔案記錄

EnumObjects 枚舉可隨同指定設備場景使用的畫筆和刷子

ExtCreatePen 創建一個擴展畫筆(裝飾或幾何)

ExtFloodFill 在指定的設備場景里,用當前選擇的刷子填充一個區域

FillPath 關閉路徑中任何打開的圖形,並用當前刷子填充

FillRect 用指定的刷子填充一個矩形

FlattenPath 將一個路徑中的所有曲線都轉換成線段

FloodFill 用當前選定的刷子在指定的設備場景中填充一個區域

FrameRect 用指定的刷子圍繞一個矩形畫一個框線

GdiComment 為指定的增強型圖元檔案設備場景添加一條注釋信息

GdiFlush 執行任何未決的繪圖操作

GdiGetBatchLimit 判斷有多少個GDI繪圖命令位於佇列中

GdiSetBatchLimit 指定有多少個GDI繪圖命令能夠進入佇列

GetArcDirection 畫圓弧的時候,判斷當前採用的繪圖方向

GetBkColor 取得指定設備場景當前的背景顏色

GetBkMode 針對指定的設備場景,取得當前的背景填充模式

GetBrushOrgEx 判斷指定設備場景中當前選定刷子起點

GetCurrentObject 獲得指定類型的當前選定對象

GetCurrentPositionEx 在指定的設備場景中取得當前的畫筆位置

GetEnhMetaFile 取得磁碟檔案中包含的一個增強型圖元檔案的圖元檔案句柄

GetEnhMetaFileBits 將指定的增強型圖元檔案複製到一個記憶體緩衝區里

GetEnhMetaFileDescription 返回對一個增強型圖元檔案的說明

GetEnhMetaFileHeader 取得增強型圖元檔案的圖元檔案頭

GetEnhMetaFilePaletteEntries 取得增強型圖元檔案的全部或部分調色板

GetMetaFile 取得包含在一個磁碟檔案中的圖元檔案的圖元檔案句柄

GetMetaFileBitsEx 將指定的圖元檔案複製到一個記憶體緩衝區

GetMiterLimit 取得設備場景的斜率限制(Miter)設定

GetNearestColor 根據設備的顯示能力,取得與指定顏色最接近的一種純色

GetObjectAPI 取得對指定對象進行說明的一個結構

GetObjectType 判斷由指定句柄引用的GDI對象的類型

GetPath 取得對當前路徑進行定義的一系列數據

GetPixel 在指定的設備場景中取得一個像素的RGB值

GetPolyFillMode 針對指定的設備場景,獲得多邊形填充模式

GetROP2 針對指定的設備場景,取得當前的繪圖模式

GetStockObject 取得一個固有對象(Stock)

GetSysColorBrush 為任何一種標準系統顏色取得一個刷子

GetWinMetaFileBits 通過在一個緩衝區中填充用於標準圖元檔案的數據,將一個增強型圖元檔案轉換成標準windows圖元檔案

InvertRect 通過反轉每個像素的值,從而反轉一個設備場景中指定的矩形

LineDDA 枚舉指定線段中的所有點

LineTo 用當前畫筆畫一條線,從當前位置連到一個指定的點

MoveToEx 為指定的設備場景指定一個新的當前畫筆位置

PaintDesk 在指定的設備場景中描繪桌面牆紙圖案

PathToRegion 將當前選定的路徑轉換到一個區域裡

Pie 畫一個餅圖

PlayEnhMetaFile 在指定的設備場景中畫一個增強型圖元檔案

PlayEnhMetaFileRecord 回放單獨一條增強型圖元檔案記錄

PlayMetaFile 在指定的設備場景中回放一個圖元檔案

PlayMetaFileRecord 回放來自圖元檔案的單條記錄

PolyBezier 描繪一條或多條貝塞爾(Bezier)曲線

PolyDraw 描繪一條複雜的曲線,由線段及貝塞爾曲線組成

Polygon 描繪一個多邊形

Polyline 用當前畫筆描繪一系列線段

PolyPolygon 用當前選定畫筆描繪兩個或多個多邊形

PolyPolyline 用當前選定畫筆描繪兩個或多個多邊形

Rectangle 用當前選定的畫筆描繪矩形,並用當前選定的刷子填充

RoundRect 用當前選定的畫筆畫一個圓角矩形,並用當前選定的刷子在其中填充

SelectClipPath 將設備場景當前的路徑合併到剪下區域裡

SelectObject 為當前設備場景選擇圖形對象

SetArcDirection 設定圓弧的描繪方向

SetBkColor 為指定的設備場景設定背景顏色

SetBkMode 指定陰影刷子、虛線畫筆以及字元中的空隙的填充方式

SetBrushOrgEx 為指定的設備場景設定當前選定刷子的起點

SetEnhMetaFileBits 用指定記憶體緩衝區內包含的數據創建一個增強型圖元檔案

SetMetaFileBitsEx 用包含在指定記憶體緩衝區內的數據結構創建一個圖元檔案

SetMiterLimit 設定設備場景當前的斜率限制

SetPixel 在指定的設備場景中設定一個像素的RGB值

SetPixelV 在指定的設備場景中設定一個像素的RGB值

SetPolyFillMode 設定多邊形的填充模式

SetROP2 設定指定設備場景的繪圖模式。與vb的DrawMode屬性完全一致

SetWinMetaFileBits 將一個標準Windows圖元檔案轉換成增強型圖元檔案

StrokeAndFillPath 針對指定的設備場景,關閉路徑上打開的所有區域

StrokePath 用當前畫筆描繪一個路徑的輪廓。打開的圖形不會被這個函式關閉

UnrealizeObject 將一個刷子對象選入設備場景之前,如刷子的起點準備用SetBrushOrgEx修改,則必須先調用本函式

WidenPath 根據選定畫筆的寬度,重新定義當前選定的路徑

設備場景函式

CombineRgn 將兩個區域組合為一個新區域

CombineTransform 驅動世界轉換。它相當於依順序進行兩次轉換

CreateCompatibleDC 創建一個與特定設備場景一致的記憶體設備場景

CreateDC 為專門設備創建設備場景

CreateEllipticRgn 創建一個橢圓

CreateEllipticRgnIndirect 創建一個內切於特定矩形的橢圓區域

CreateIC 為專用設備創建一個信息場景

CreatePolygonRgn 創建一個由一系列點圍成的區域

CreatePolyPolygonRgn 創建由多個多邊形構成的區域。每個多邊形都應是封閉的

CreateRectRgn 創建一個矩形區域

CreateRectRgnIndirect 創建一個矩形區域

CreateRoundRectRgn 創建一個圓角矩形

DeleteDC 刪除專用設備場景或信息場景,釋放所有相關視窗資源

DPtoLP 將點陣從設備坐標轉換到專用設備場景邏輯坐標

EqualRgn 確定兩個區域是否相等

ExcludeClipRect 從專用設備場景的剪裁區中去掉一個矩形區。矩形內不能進行繪圖

ExcludeUpdateRgn 從專用設備場景剪裁區去掉指定視窗的刷新區域

ExtCreateRegion 根據世界轉換修改區域

ExtSelectClipRgn 將指定區域組合到設備場景的當前剪裁區

FillRgn 用指定刷子填充指定區域

FrameRgn 用指定刷子圍繞指定區域畫一個外框

GetBoundsRect 獲取指定設備場景的邊界矩形

GetClipBox 獲取完全包含指定設備場景剪裁區的最小矩形

GetClipRgn 獲取設備場景當前剪裁區

GetDC 獲取指定視窗的設備場景

GetDCEx 為指定視窗獲取設備場景。相比GetDC,本函式提供了更多的選項

GetDCOrgEx 獲取指定設備場景起點位置(以螢幕坐標表示)

GetDeviceCaps 根據指定設備場景代表的設備的功能返回信息

GetGraphicsMode 確定是否允許增強圖形模式(世界轉換)

GetMapMode 為特定設備場景調入映象模式

GetRegionData 裝入描述一個區域信息的RgnData結構或緩衝區

GetRgnBox 獲取完全包含指定區域的最小矩形

GetUpdateRgn 確定指定視窗的刷新區域。該區域當前無效,需要刷新

GetViewportExtEx 獲取設備場景視口(viewport)範圍

GetViewportOrgEx 獲取設備場景視口起點

GetWindowDC 獲取整個視窗(包括框線、滾動條、標題欄、選單等)的設備場景

GetWindowExtEx 獲取指定設備場景的視窗範圍

GetWindowOrgEx 獲取指定設備場景的邏輯視窗的起點

GetWindowRgn 獲取視窗區域

GetWorldTransform 如果有世界轉換,為設備場景獲取當前世界轉換

IntersectClipRect 為指定設備定義一個新的剪裁區

InvalidateRgn 使視窗指定區域不活動,並將它加入視窗刷新區,使之可隨後被重畫

InvertRgn 通過顛倒每個像素值反轉設備場景指定區域

LPtoDP 將點陣從指定設備場景邏輯坐標轉換為設備坐標

ModifyWorldTransform 根據指定的模式修改世界轉換

OffsetClipRgn 按指定量平移設備場景剪裁區

OffsetRgn 按指定偏移量平移指定區域

OffsetViewportOrgEx 平移設備場景視口區域

OffsetWindowOrgEx 平移指定設備場景視窗起點

PaintRgn 用當前刷子背景色填充指定區域

PtInRegion 確定點是否在指定區域內

PtVisible 確定指定點是否可見(即,點是否在設備場景剪裁區內)

RectInRegion 確定矩形是否有部分在指定區域內

RectVisible 確定指定矩形是否有部分可見(是否在設備場景剪裁區內)

ReleaseDC 釋放由調用GetDC或GetWindowDC函式獲取的指定設備場景

RestoreDC 從設備場景堆疊恢復一個原先保存的設備場景

SaveDC 將指定設備場景狀態保存到Windows設備場景堆疊

ScaleViewportExtEx 縮放設備場景視口的範圍

ScaleWindowExtEx 縮放指定設備場景視窗範圍

ScrollDC 在視窗(由設備場景代表)中水平和(或)垂直滾動矩形

SelectClipRgn 為指定設備場景選擇新的剪裁區

SetBoundsRect 設定指定設備場景的邊界矩形

SetGraphicsMode 允許或禁止增強圖形模式,以提供某些支持(包括世界轉換)

SetMapMode 設定指定設備場景的映射模式

SetRectRgn 設定區域為指定的矩形

SetViewportExtEx 設定設備場景視口範圍

SetViewportOrgEx 設定設備場景視口起點

SetWindowExtEx 設定指定設備場景視窗範圍

SetWindowOrgEx 設定指定設備場景視窗起點

SetWindowRgn 設定視窗區域

SetWorldTransform 設定世界轉換

ValidateRgn 激活視窗中指定區域,把它從刷新區移走

WindowFromDC 取回與某一設備場景相關的視窗的句柄

相關詞條

相關搜尋

熱門詞條

聯絡我們