Win32 API 函數列表1(格式有點亂)

  西安郵電學院 徐兆元

ID編號 函數名 函數說明 詳細說明 Win16支持 Win9x支持 WinNT支持
1 AbortDoc 終止一項打印作業  Yes Yes Yes
2 AbortPath 終止或取消DC中的一切路徑  No Yes Yes
3 AbortPrinter 刪除打印機緩衝文件  No Yes Yes
4 AbortSystemShutdowna 停止系統工作  No Yes Yes
5 AccessCheck 檢驗客戶訪問權限  No Yes Yes
6 AccessCheckAndAuditAlarm 檢驗訪問,產生聲音或警報  No Yes Yes
7 ActivateKeyboardLayout 激活一個新的鍵盤設備 "    函數功能:激活鍵盤佈局。該函數Windows NT和Windows 95中的實現有很大不同。本參考頁中首先給出了完整的Windows NT的實現,下來又給出了Windows 95版本的實現,以便大家更好地瞭解二者的區別。在Windows NT中ActivateKeyboadLayout函數激活一種不同的鍵盤佈局,同時在整個系統中而不僅僅是調用該函數的進程中將該鍵盤佈局設爲活動的。

    函數原型:HKL ActivateKeyboardLayout( HKL hkl,UINT Flags);

    參數:

    hkl:將被激活的鍵盤佈局的句柄。該佈局必須先調用LeadKeyboadLayout函數裝入,該參數必須是鍵盤分局的句柄,或是如下的值中的一種:

    HKL_NEXT:在系統保持的,己裝入的佈局的循環鏈表中,選擇下一佈局。

    HKL_PREV:在系統保持的,已裝入的佈局的循環鏈表中,選擇前一佈局。

    Flags:定義鍵盤佈局如何被激活。該參數可取如下的一些值:

    LFREORDER:若該位被設置,則已裝入的鍵盤佈局的循環鏈路表將被重新排序。若該位沒有設置,則循環鏈路表的順序不變。例如,若用戶激活了英語鍵盤佈局,同時依序裝入了法語、德語、西班牙語鍵盤佈局,然後通過設置KLF_REORDE位激活德語鍵盤佈局,則會產生如下順序:德語、英語、法語、西牙語鍵盤佈局。若激活德語鍵盤佈局時未設置KLF_REORDER位,則產生如下的鍵盤佈局的鍵盤佈局序列:德語、西班牙語、英語、法語。若裝入的鍵盤佈局少於三種,則該標誌域的值不起作用。

    KLF_SETFORPROCESS:在Windows NT 5.0以上版本中使用。該參數用於整個進程中激活指定的鍵盤布,並向當前進程的所有線程發送WM_INPUTLANGCHANGE消息。

    KLF_UNLOADPREVLOUS:卸載先前活動的鍵盤佈局。

    返回值:如果函數調用成功,返回值爲前一鍵盤佈局的句柄。否則,返回值爲零。若要獲得更多多錯誤信息,可調用GetLastError函數。

    備註:在任一時刻可以裝入多種鍵盤佈局,但一次僅能激活一種佈局。裝入多種鍵盤佈局使得可以快速地在多種佈局之間切換。Windows 95 ACtivateKeyboadLayout函數爲當前線程設置輸入語言。該函數接受一個鍵盤佈局句柄,該句柄標識鍵盤的一個局部的和物理佈局。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。
" No Yes Yes
8 AddAccessAllowedAce 將ACCESS_ALLOWED_ACE加入ACL  No Yes Yes
9 AddAccessDeniedAce 將ACCESS_DENIED_ACE加入ACL  No Yes Yes
10 AddAce 將ACE加入一個已存在的ACL  No Yes Yes
11 AddAtom 將一個字符串加入本地原子表  Yes Yes Yes
12 AddAuditAccessAce 將SYSTEM_AUDIT_ACE加入ACL  No Yes Yes
13 AddFontResource 將一種字體加入字體表  Yes Yes Yes
14 AddForm 加入一個打印機窗體  No Yes Yes
15 AddJob 啓動一個打印作業  No Yes Yes
16 AddMonitor 加入一個打印機管理器  No Yes Yes
17 AddPort 加入一個打印機端口  No Yes Yes
18 AddPrintProcessor 將打印處理器複製到打印機服務器中  No Yes Yes
19 AddPrintProvidor 加入一個打印機支持器  No Yes Yes
20 AddPrinter 在打印機服務器上建立一個打印機  No Yes Yes
21 AddPrinterConnection 爲當前用戶建立與打印機的聯繫  No Yes Yes
22 AddPrinterDriver 將打印機驅動程序複製到打印機服務器中  No Yes Yes
23 AdjustTokenGroups 使能/取消令牌中的羣  No Yes Yes
24 AdjustTokenPrivileges 使能/取消令牌特權  No Yes Yes
25 AdjustWindowRect 計算所需窗口矩形的大小  Yes Yes Yes
26 AdjustWindowRectEx 計算所需窗口矩形的大小 "    函數功能:該函數依據所需客戶矩形大小,計算需要的窗口矩形的大小。計算出的窗口矩形隨後可以傳送給CreateWindowEx函數,用於創建一個客戶區所需大小的窗口。

    函數原型:BOOL AdjustWindowRectEX(LPRECT lpRect,DWORD dwStyte;BOOL bMenu;DWORD dwExStyle);

    參數:

    lpRect:指向RECT結構的指針,該結構包含所需客戶區域的左上角和右下角的座標。函數返回時,該結構包含容納所需客戶區域的窗口的左上角和右下角的座標。

    dwStyle:指定將被計算尺寸的窗口的窗口風格。

    bMenu:指示窗口是否有菜單。

    dwExStyle:指定將被計算尺寸的窗口的擴展窗口風格。

    返回值:如果函數成功,返回值爲非零;如果函數失敗,返回值爲零。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:客戶矩形是指完全包含一個客戶區域的最小矩形;窗口矩形是指完全包含一個窗口的最小矩形,該窗口包含客戶區與非客戶區。

    當一個菜單條下拉出兩行或更多行時,AdjustWindowRect函數不增加額外的空間。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:1.0以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
27 AdvancedDocumentProperties 進行打印機高級設置  No Yes Yes
28 AllocConsole 爲當前進程建立控制檯  No Yes Yes
29 AllocateAndInitializeSid 分配和初始化SID  No Yes Yes
30 AllocateLocallyUniqueId 分配LUID  No Yes Yes
31 AngleArc 按指定角度畫弧  No Yes Yes
32 AnimatePalette 替換邏輯調色板中的項目  Yes Yes Yes
33 AnyPopup 標識彈出式窗口是否存在 "    函數功能:該函數指出一個被屬窗口,可見窗口,頂級彈出窗口,或層疊窗日是否在屏幕上存在。這個函數搜索整個屏幕,而不僅僅搜索應用程序的客戶區。

    函數原型:BOOL AnyPopup(VOID)

    參數:無。

    返回值:如果一個彈出式窗口存在,返回值爲非零,即使該窗口被其他窗口完全覆蓋。如果彈出式窗口不存在,返回值爲零。

    備註:函數不檢測無所屬關係的彈出式窗口,或無WS_VISIBLE設置位的窗口。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:USer32.lib。

" Yes Yes Yes
34 AppendMenu 在菜單中加入新的項目 "    函數功能:該函數在指定的菜單條、下拉式菜單、子菜單或快捷菜單的末尾追加一個新菜單項。此函數可指定菜單項的內容、外觀和性能。函數AppendMenu己被lnsertMenultem取代。但如果不需要lnsertMenultem的擴展特性,仍可使用AppendMenu。

    函數原型:BOOL AppendMenu(hMenu hMenu,UINT uFlags,UINT uIDNewltem,LPCTSTR lpNewltem);

    參數:

    hMenu:將被修改的菜單條、下拉式菜單、子菜單、或快捷菜單的句柄。

    UFlags:控制新菜單項的外觀和性能的標誌。此參數可以是備註裏所列值的組合。

    UIDNewltem:指定新菜單項的標識符,或者當uFlags設置爲MF_POPUP時,表示下拉式菜單或子菜單的句柄。

    LpNewltem:指定新菜單項的內容。此參數的含義取決於參數uFlags是否包含MF_BITMAP, MF_OWNERDRAW或MF_STRING標誌,如下所示:

    MF_BITMAP:含有位圖句柄。MF_STRING:以`/O’結束的字符串的指針。

    MF_OWNERDRAW:含有被應用程序應用的32位值,可以保留與菜單項有關的附加數據。當菜單被創建或其外觀被修改時,此值在消息WM_MEASURE或WM_DRAWITEM的參數IParam指向的結構,成員itemData裏。

    返回值:如果函數調用成功,返回非零值;如果函數調用失敗,返回值是零。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:一旦菜單被修改,無論它是否在顯示窗口裏,應用程序必須調用函數DrawMenuBar。

    爲了使鍵盤加速鍵能控制位留或自己繪製的菜單項,菜單的擁有者必須處理WM_MENUCHAR消息。

    參見自繪製菜單和WM_MENUCHAR消息。

    下列標誌可被設置在參數uFlags裏:

    MF_BITMAP:將一個位圖用作菜單項。參數lpNewltem裏含有該位圖的句柄。

    MF_CHECKED:在菜單項旁邊放置一個選取標記。如果應用程序提供一個選取標記,位圖(參見SetMenultemBitmaps),則將選取標記位圖放置在菜單項旁邊。

    MF_DISABLED:使菜單項無效,使該項不能被選擇,但不使菜單項變灰。

    MF_ENABLED:使菜單項有效,使該項能被選擇,並使其從變灰的狀態恢復。

    MF_GRAYED:使菜單項無效並變灰,使其不能被選擇。

    MF_MENUBARBREAK:對菜單條的功能同MF_MENUBREAK標誌。對下拉式菜單、子菜單或快捷菜單,新列和舊列被垂直線分開。

    MF_MENUBREAK:將菜單項放置於新行(對菜單條),或新列(對下拉式菜單、子菜單或快捷菜單)且無分割列。

    MF_OWNERDRAW:指定該菜單項爲自繪製菜單項。菜單第一次顯示前,擁有菜單的窗口接收一個WM_MEASUREITEM消息來得到菜單項的寬和高。然後,只要菜單項被修改,都將發送WM_DRAWITEM消息給菜單擁有者的窗口程序。

    MF_POPUP:指定菜單打開一個下拉式菜單或子菜單。參數uIDNewltem下拉式菜單或子菜單的句柄。此標誌用來給菜單條、打開一個下拉式菜單或於菜單的菜單項、子菜單或快捷菜單加一個名字。

    MF_SEPARATOR:畫一條水平區分線。此標誌只被下拉式菜單、於菜單或快捷菜單使用。此區分線不能被變灰、無效或加亮。參數IpNewltem和uIDNewltem無用。

    MF_STRING:指定菜單項是一個正文字符串;參數lpNewltem指向該字符串。

    MF_UNCHECKED:不放置選取標記在菜單項旁邊(缺省)。如果應用程序提供一個選取標記位圖(參見SetMenultemBitmaps),則將選取標記位圖放置在菜單項旁邊。

    下列標誌組不能被一起使用:

    MF_DISABLED,MF_ENABLED和MF_GRAYED;MF_BITMAP,MF_STRING和MF_OWNERDRAW

    MF_MENUBARBREAK和MF_MENUBREAK;MF_CHECKED和MF_UNCHECKED

    Windows CE環境下,不支持參數fuFlags使用下列標誌:

    MF_BITMAP;MF_DOSABLE;MF_GRAYED

    MF_GRAYED可用來代替MF_DISABLED和MFS_GRAYED。

    Windows CE 1.0不支持層疊式菜單。在使用Windows CE 1.0時,不能將一個MF_POPUP菜單插入到另一個下拉式菜單中。Window CE 1.0不支持下列標誌:

    MF_POPUP;MF_MENUBREAK;MF_MENUBARBREAK

    Windows CE 2.0或更高版本中,支持上述標誌,也支持層疊式菜單。

" Yes Yes Yes
35 Arc 畫弧  Yes Yes Yes
36 ArcTo 畫橢圓弧  No Yes Yes
37 AreAllAccessesGranted 檢查所有要求的訪問  No Yes Yes
38 AreAnyAccessesGranted 檢查任何要求的訪問  No Yes Yes
39 ArrangeIconicWindows 排列最小化的子窗口 "    函數功能:該函數安排指定父窗口的各個最小化(圖標化)子窗口。

    函數原型:UNIT ArrangeIconicWindows(HWND hWnd):

    參數:

    hWnd:父窗口句柄。

    返回值:如果函數成功,返回值爲一行圖標的高度。如果函數失敗,返回值爲零。若想獲得更多錯誤信息,請調用 callGetLastError函數。

    備註:一個應用程序可以通過使用ArrangeIconicWindows安排在一個父窗口衛的它自身的最小化的子窗口。這個函數也可以安排桌面圖標。使用GetDesttopWindow函數獲得桌面窗口的句柄。

    一個應用程序給多文本接口(MDI)客戶窗口發送WM_MDIICONARRANGE消息,使客戶窗口來安排自身的最小化MDI子窗口。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
40 AttachThreadInput 將線索彼此相連  No Yes Yes
41 auxGetDevCaps 獲取附屬設備容量  No Yes Yes
42 auxGetNumDevs 返回附屬設備數量  No Yes Yes
43 auxGetVolume 獲取當前卷設置  No Yes Yes
44 auxOutMessage 向輸出設備發送消息  No Yes Yes
45 auxSetVolume 設置附屬設備卷  No Yes Yes
46 BackupEventLog 將事件記錄保存至後備文件  No Yes Yes
47 BackupRead 產生磁帶備份讀  No Yes Yes
48 BackupSeek 產生磁帶備份查尋  No Yes Yes
49 BackupWrite 產生磁帶備份寫  No Yes Yes
50 Beep 產生一個聲調  No Yes Yes
51 BeginDeferWindowPos 創建一個窗口位置結構 "    函數功能:該函數爲一個多窗口位置結構分配內存並且返回該結構的句柄。

    函數原型:HDWP BeginDeferWindowPos(int nNumWindows);

    參數:

    nNumWindows:指示存儲位置信息的初始窗口數目。如有必要,DeferWindowPos函數可以增加該結構的大小。

    返回值:如果函數成功,返回多窗口位置結構。如果分配內存時內存不足,則返回值爲NULL。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:多窗口位置結構是一個內部結構,應用程序不能直接引用。

    DeferWindowPos函數在多窗口位置結構中填充了將被移動的一個或多個窗口的目標位置信息。EndDeferWindowPos接收該結構的句柄,並且依據存儲在該結構中的信息重定位這些窗口。

    如果在多窗口位置結構中的任意一個窗口中設置了SWP_HIDEWINDOW和SWP_SHOWWINDOW標誌,則所有窗口都不能被重定位。

    如果系統必須增加在多窗口位置結構中由nNumWindows設置的初始窗口數目,但又沒有足夠的內存分配,則系統的整個窗口重定位順序失敗(BeginDeferWindowsPos,DeferWindowsPos,EndDeferWindowPos)。應用程序通過指定所需最大數目,可以在執行過程中進行早期的檢測和處理。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持:頭文件:winuser.h;庫文件:user32.lib。

" No Yes Yes
52 BeginPaint 準備一個畫圖窗  Yes Yes Yes
53 BeginPath 開始一個路徑等級  Yes Yes Yes
54 BeginUpdateResource 在可執行文件中開始資源文件更新 "    函數功能:該函數返回一個可被UpdateResource函數使用的句柄以便在一個可執行文件中增加、刪除或替換資源。

    函數原型:HANDLE BeginUpdateResource(LPCTSTR pFileName,BOOL bDeleteExistingResources);

    參數:

    pFileName:指向一個表示結束的空字符串指針,它是用來指定用以更新資源的基於32-位可執行文件的文件名。應用程序必須獲得訪問這個文件的可寫權限,並且此文件在當前狀態下不能被執行。如果pFileName未被指定完全路徑,系統將在當前路徑下搜尋此文件。

    bDeleteExistingResources:說明是否刪除PFileName參數指定的現有資源。如果這個參數爲TRUE則現有的資源將被刪除,而更新可執行文件只包括由UpdateResource函數增加的資源。如果這個參數爲FALSE,則更新的可執行文件包括現有的全部資源,除非通過UpdateResource特別說明被刪除或是替換的。

    返回值:如果此函數運行成功,其值將通過使用UpdateResource和EndUpdateResource函數返回一個句柄。如果被指定的文件不是一個可執行文件,或者可執行文件已被裝載,或者文件不存在,或是文件不能被打開寫入時,則返回值爲空。若想獲得更多的錯誤信息,請調用GetLastError函數。

    速查:Windows 3.1以上。頭文件:winbase.h:庫文件:kernel32.lib,Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
55 BitBlt 在設備描述表間複製位圖  Yes Yes Yes
56 BringWindowToTop 將指定的窗口設置到Z序的頂部 "    函數功能:該函數將指定的窗口設置到Z序的頂部。如果窗口爲頂層窗口,則該窗口被激活;如果窗口爲了窗口,則相應的頂級父窗口被激活。

    函數原型:B00L BringWindowToTop(HWND,hWnd);

    參數:

    hWnd: 設置到Z序的頂部的窗口句柄。

    返回值:如果函數成功,返回值爲非零;如果函數失敗,返回值爲零。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:使用BringWindowToTop函數顯示出被其他窗口部分或全部遮蓋的窗口。

    調用這個函數類似於調用SetWindowPos函數來改變窗口在Z序中的位置,但是BringWindowToTop函數並不能使一個窗口成爲頂層窗口。

    如果應用程序不在前臺中而想設置在前臺中,可以調用SetForegroundWindow函數。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:1.0以上版本;頭文件:winuser.h;庫文件:user32.lid。

" Yes Yes Yes
57 BroadcastSystemMessage 發送消息給指定的接受者 "    函數功能:該函數發送消息給指定的接受者。接受者可以是一個應用程序、安裝驅動器、網絡驅動器、系統級設備驅動器或這些系統組件的組合。

    函數原型:long BroadcastSystemMessage(DWORD dwFIags,LPDWORD IpdwRecipients,UINT UiMessage,WPARAMwParam,LPARAM IParam);

    參數:

    dwFlags:選項標誌。可取下列值的組合:

    BSF_FLUSHDISK:接受者處理消息之後清洗磁盤。

    BSF_FORCEIFHUNG:繼續廣播消息,即使超時週期結束或一個接受者已掛起。

    BSF_IGNORECURRENTTASK:不發送消息給屬於當前任務的窗口。這樣,應用程序就不會接收自己的消息。

    BSF_NOHANG:強制掛起的應用程序超時。如果一個接受者超時,不再繼續廣播消息。

    BSF_NOTIMEOUTIFNOTHUNG:只要接受者沒掛起,一直等待對消息的響應。不會出現超時。

    BSF_POSTMESSAGE:寄送消息。不能和BSF_QUERY組合使用。

    BSF_QUERY:每次發送消息給一個接受者,只有當前接受者返回TRUE後,才能發送給下一個接受者。

    lpdwRecipients:指向變量的指針,該變量含有和接收消息接受者的信息。此變量可爲下列值的組合:

    BSM_ALLCOMPONENTS:廣播到所有的系統組件。

    BSM_ALLDESKTOPS:Windows NT下,廣播到所有的桌面。要求SE_TCB_NAME特權。

    BSM_APPLICATIONS:廣播到應用程序。

    BSM_INSTALLABLEDRIVERS:Windows 95下,廣播到安裝驅動器。

    BSM_INTDRIVER:Windows 95下,廣播到網絡驅動器。

    BSM_VXDS:Windows 95下,廣播到所有系統級設備驅動器。

    當函數返回時,此變量接受上述值的組合,以確定真正接受消息的接受者。如果此參數爲NULL,則將消息廣播到所有的組件。

    uiMessage:系統消息標識符。

    WParam:32位消息特定值。

    IParam:32位消息特定值。

    返回值:如果函數調用成功,返回值是正數。如果函數不能廣播消息,返回值是C1。如果參數dwFlags爲BSF_QUERY且至少一個接受者返回BROADCAST_QUERY_DENY給相應的消息,返回值是零。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:如果BSF_QUERY沒指定,函數發送指定的消息給所有請求的接受者,並忽略這些接受者返回的值。

    速查:Windows NT:4.0及以上版本:Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;輸入庫:user32.lib;Unicode:在Windows NT環境下以Unicode和ANSI方式實現。

" No Yes Yes
58 BuildCommDCB 向DCB中傳送設備定義字符串  Yes Yes Yes
59 BuildCommDCBAndTimeouts 建立COMMDCB並設置超時值  No Yes Yes
60 CallMsgFilter 將消息傳給消息過濾過程  Yes Yes Yes
61 CallNamedPipe 多管道操作  No Yes Yes
62 CallNextHookEx 調中鏈中的下一個掛鉤過程  Yes Yes Yes
63 CallWindowProc 將消息信息傳送給指定的窗口過程 "    函數功能:該函數CallWindowProc將消息信息傳送給指定的窗口過程。

    函數原型:LRESULT CallWindowProc(WNDPROC lpPrevWndFunc,HWND hWnd.UINT Msg,WPARAM wParam,LPARAMIParam);

    參數:

    lpPrevWndFunc:指向前一個窗口過程的指針。如果該值是通過調用GetWindowLong函數,並將該函數中的nlndex參數設爲GWL_WNDPROC或DWL_DLGPROC而得到的,那麼它實際上要麼是窗口或者對話框的地址,要麼就是代表該地址的句柄。

    hWnd:指向接收消息的窗口過程的句柄。

    Msg:指定消息類型。

    wParam:指定其餘的、消息特定的信息。該參數的內容與Msg參數值有關。

    IParam:指定其餘的、消息特定的信息。該參數的內容與Msg參數值有關。

    返回值:返回值指定了消息處理結果,它與發送的消息有關。

    備註:使用函數CallWindowsProc可進行窗口子分類。通常來說,同一類的所有窗口共享一個窗口過程。子類是一個窗口或者相同類的一套窗口,在其消息被傳送到該類的窗口過程之前,這些消息是由另一個窗口過程進行解釋和處理的。

    SetWindowLoog函數通過改變與特定窗口相關的窗日過程,使系統調用新的窗口過程來創建子類,新的窗口過程替換了以前的窗口過程。應用程序必須通過調用CallWindowsProc來將新窗日過程沒有處理的任何消息傳送到以前的窗口過程中,這樣就允許應用程序創建一系列窗口過程。

    如果定義了STRICT,那麼lpPrevWndFunc參數具有WNDPROC數據類型。WNDPROC類型說明如下:

    LRESULT(CALLBACK· WNDPROC)(HWND, UINT WPARAM,LPARAM)

    如果沒有定義STRICT,那麼lpPrevWndFunc參數具有FARPROC數據類型。FARPROC類型說明如下:int(FAR WINAPL·FARPROC)()

    在C語言中,FARPROC申明表示爲一個沒有指定參數表的回調函數。然而在 C++中;申明中的空參數表示該函數沒有參數。這種微妙的區別有可能引起代碼出錯。下面是一種解決辦法:#ifdef STRICT;WNDPROC MyWindowProcedure;#else;FARPROC MyindowProcedure;#endif IResult=CallWindowProc(MyWindowProcedure,…)

    有關該函數的空參數表方面進一步的信息,清參考Bjarne Stroustrup編寫的C++編程語言第2版。

    對於Windows NT:函數CallWindowsProc function進行了Unicode至ANSf轉換處理。如果你直接調用該窗口過程,那麼無法利用該轉換。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:1.0以上版本;頭文件:winuser.h;庫文件:user32.lib:Unicode:在Windows NT環境中以Unicode和ANSI版本實現。

" No Yes Yes
64 CancelDC 取消指定DC上的任何懸而未決的操作  No Yes Yes
65 CascadeWindows 層疊排列指定父窗口的各指定子窗口 "    函數功能:該函數層疊排列指定父窗口的各指定子窗口。

    函數原型:WORD WINAPI CascadeWihdows(HWND hWndParent,UNIT wHow,CONST RECT*lpRect,UNIT cKids, Const HWND FA*lpKids);

    參數:

    Parent:父窗口的句柄。如果參數爲NVLL,則假定爲桌面窗口。

    wHow:指定層疊標誌。唯一可用的標誌爲MDITILE_SKIPDISABLED,防止被禁止的MDI子窗口被層疊排列。

    lpBect:指向RECT結構的指針,該結構以客戶座標定義矩形區域,並在這個區域中排列窗口、該參數可以爲NULL,這種情況下使用父窗口的客戶區域。

    cKids:指明由lpKids參數指定的數組的成員個數。如果IpKidS參數爲NULL,則此參數將被忽略。

    lpKids:指向將被排列的子窗口的句柄數組的指針。如果此參數爲空,則指定的父窗口(或桌面窗口)的所有子窗口都將被排列。

    返回值:如果函數成功,返回值爲被排列的窗口數目;如果函數失敗,返回值爲零。若想獲得更多錯誤信息,請調用 GetLastError函數。

    備註:調用CascadeWindows函數使所有最大化窗口恢復到它們原來的大小。

    速查: Windows NT:4.0以上版本;Windows:95以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:User32.1

" No Yes Yes
66 ChangeClipboardChain 從剪貼板查看窗口上刪除一個窗口  Yes Yes Yes
67 ChangeMenu   No Yes Yes
68 ChangeServiceConfig 修改服務參數  No Yes Yes
69 CharLower 將字符或字符串變爲小寫  No Yes Yes
70 CharLowerBuff 將字符串變爲小寫  No Yes Yes
71 CharNext 轉到字符串的下一個字符  No Yes Yes
72 CharPrev 轉到字符串的上一個字符  No Yes Yes
73 CharToOem 把字符串轉換成OEM字符  No Yes Yes
74 CharToOemBuff 把字符串轉換成OEM字符  No Yes Yes
75 CharUpper 將字符或字符串變爲大寫  No Yes Yes
76 CharUpperBuff 將字符串變爲小寫  No Yes Yes
77 CheckColorsInGamut 檢查設備調色板中是否有色彩  No Yes Yes
78 CheckDlgButton 改變按鈕控制的選中狀態 "    函數功能:該函數改變按鈕控制的選中狀態。

    函數原型:BOOL CheckDlgButton(HWNDhDlg,int nlDButton,UINT uCheck);

    參數:

    hDlg:指向含有該按鈕的對話框的句柄。

    nlDButton:標識要修改的按鈕。

    uCheck:給定該按鈕的選中狀態。該參數可取下列值,這些值的含義如下:

    BST_CHECKED:設置按鈕狀態爲己選中(checked)。

    BST_INDETERMINATE:設置按鈕狀態變灰,表示不確定狀態。只有在該按鈕具有BS_3STATE或BS_AUTO3STATE樣式時才能使用該值。

    BST_UNCHECKED:設置按鈕爲未選中狀態(unchecked)。

    返回值:如果函數執行成功,返回值非零;如果函數失敗,則返回值爲零。若想獲取更多錯誤信息,請調用 GetLastError函數。

    速查;Windows NT:3.1 及以上版本;WindowS:95及以上版本;Windows CE:不支持:頭文件:Winuser.h;庫文件:user32.lib。

" Yes Yes Yes
79 CheckMenuItem 修改菜單項的複選標記屬性 "    函數功能:該函數設置指定菜單項的校覈標記屬性爲選取或不選取。該函數已被函數SetMenuItemInfo取代。但若不需要SetMenuItemInfo的擴展特性,仍可使用CheckMenuItem。

    函數原型:DWORD CheckMenuItem(HMENU hMenu,UINT ulDCheckItem,UINT uCheck);

    參數:

    hMenu:有關菜單的句柄。

    UlDCheckItem:指定要設置其選取標記屬性的菜單項。其含義由參數uCheck決定。

    uCheck:指定控制參數uIDCheckItem的含義的標誌,並指定菜單項的選取標記屬性的狀態。此參數可爲MF_BYCOMMAND或MF_BYPOSITON和MF_CHECKED或MF_UNCHECKED的組合。

    MF_BYCOMMAND:表示參數uIDCheckItem給出了菜單項的標識符。若標誌MF_BYCOMMMAND和

    MF_BYFOSITION都沒被指定,則MF_BYCOMMMAND爲缺省值。

    MF_CHECKED:設置選取標記屬性爲選取。

    MF_UNCHECKED:設置選取標記屬性爲未選取。

    返回值:返回值指定菜單項的前一狀態(MF_CHECKED或MF_UNCHECKED)。如果菜單項不存在,返回值是OXFFFFFFFF。

    備註:萊單條裏的項不能有選取標記。

    參數uIDCheckItem標識一個打開子菜單的菜單項或命令項。對打開子菜單的菜單項,參數uIDCheckItem必須指定菜單項的位置。對命令項,參數uIDCheckItem可指定其位置或標識符。

" Yes Yes Yes
80 CheckMenuRadioItem  "    函數功能:該函數校覈一個指定的菜單項並使其成爲一個圓按鈕項。同時不校覈相關組裏的其他菜單項並清除這些項的國按鈕的類型標誌。

    函數原型:BOOL CheckMenuRadioItem(HMEN hMENU,UINT idFirst,UINT idLast,UINT uFlags);

    參數:

    hMenu:包含一組菜單項的菜單的句柄。

    idFirst:菜單組裏第一個菜單項的標識符或位置。

    idLast:菜單組裏最後一個菜單項的標識符或位置。

    IdCheck:要選取的菜單項的標識符或位置。

    uFlag:指定idFirst,idLast,idCheck含義的值。如果此參數爲MF_BYCOMMAND,則其他參數指定菜單項標識符。如果此參數爲MF_BYPOSITION,則其他參數指定菜單項位置。

    返回值:如果函數調用成功,返回值非零。如果函數調用失敗,返回值爲零。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:CheckMenuRadioItem設置了MFT_RADIOCHECK類型標誌,併爲由idCheck指定的項設置 MFS_CHECKED狀態,同時,清除組裏所有其他項目的上述兩個標誌。被選取的項用項目目標表示,而不是用複選標記目標。要得到更多的關於菜單項類型和狀態標誌的信息,參看MENUITEMINFO結構。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件;winuser.h;輸入庫:user32.lib。

" No Yes Yes
81 CheckRadioButton 給一個指定按鈕加上選中標誌 "    函數功能:該函數給一組單選按鈕中的一個指定按鈕加上選中標誌,並且清除組中其他按鈕的選中標誌。

    函數原型:BOOL CheckRadioButton(HWNDhDlg, intnlDFirstButton, intnlDLastBUtton, intnlDCheckButton);

    參數:

    hDlg:指向包含單選按鈕的對話框的句柄。

    nlDFirstButton:指定組中第1個單選按鈕的標識符。

    nlDLastButton:指定組中最後一個單選按組的標識符。

    nlDCheckButton:指出要選中的那個單選按鈕的標識符。

    返回值:如果函數執行成功,返回值非零;如果失敗,則返回零。若想獲取更多錯誤信息,請調用GetLastError函數。

    速查:Windows NT:3.1及以上版本;Windows:95及以廣版本;Windows CE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
82 ChildWindowFromPoint 確定包含有點的窗口 "    函數功能:該函數確定屬於某一父窗口的哪一個子窗口(如果存在的話)包含一個指定的點。

    函數原型:HWND ChildWindowFromPoint(HWND hWndParent.POINT Point):

    Parent:父窗口句柄。

    Point:指定一個POINT結構,該結構給定了被檢查的點的座標。

    返回值:返回值爲包含該點的子窗口的句柄,即使該子窗口是隱藏的或被禁止的。如果該點在父窗口之外,則返回值爲NULL。如果該點在父窗口內,但在任一子窗口外,則返回值爲父窗口句柄。

    備註:系統有一個與某一父窗口有聯繫的所有子窗口的內部列表。列表中的句柄順序依據這些子窗口的z序。如果有多於一個的子窗口包含該點,那麼系統返回在列表中包含該點的第一個窗口的句柄。

    速查:Windows NT:3.1以上版本:Windows:95以上版本;Windows CE;1.0以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
83 ChildWindowFromPointEx 確定包含有點的窗口 "    函數功能:該函數確定屬於父窗口的哪一個子窗口(如果存在的話)包含着指定的點。該函數可以忽略不可見的、禁止的和透明的子窗口。

    函數原型:HWND ChidWindowFromPointEx(HWND hwndParent,POINT pt,UNIT uFlags);

    參數:

    hWndParent:父窗口句柄。

    pt:指定一個POINT結構,該結構定義了被檢查的點的座標。

    uFlags:指明忽略的子窗口的類型。該參數可以是下列參數的組合。

    CWP_ALL:不忽略任一子窗口。CWP_SKIPINVISIBLE:忽略不可見的子窗口。

    CWP_SKIPDISABLE:忽略禁止的子窗口。CWP_SKIPTRABSPARENT:忽略透明子窗口。

    返回值:返回值爲包含該點並且滿足由uFlags定義的規則的第一個子窗口的句柄。如果該點在父窗口內,但在任一滿足條件的子窗口外,則返回值爲父窗口句柄。如果該點在父窗口之外或函數失敗,則返回值爲NULL。

    備註:系統有一個與某一父窗口有聯繫的所有子窗口的內部列表。列表中的句柄順序依據這些子窗口的Z序。如果有多於一個的子窗口包含該點,那麼系統返回在列表中包含該點並且滿足由uFlags定義的規則的第一個窗口的句柄。

    速查:Windows NT:4.0以上版本;Windows:95以上版本;Windows CE:不支持;頭文件:Winuser.h;庫文件:user32.lib。

" No Yes Yes
84 ChooseColor 建立一個色彩選擇對話框 "    函數功能:該函數創建一個能使用戶從中選擇顏色的通用顏色對話框。

    函數原型:BOOL ChooseColor(LPCHOOSECOLOR IpCC);

    參數:

    lpCC:指向一個包括初始化對話框信息的CHOOSECOLOR結構。當ChooseColor函數返回時,此結構含有有關用戶顏色選擇的信息。

    返回值:如果用戶點擊對話框中的OK按鈕,返回值爲非零值。CHOOSECOLOR結構中的rgbResult成員含有用戶選擇的顏色的RGB顏色值。如果用戶取消或關閉Color對話框或錯誤出現,返回值爲零。若想獲得更多錯誤信息,請調用CommDlgExtondedError函數,此函數的返回值爲下列中的一個:

    CDERR_FINDRESFAILURE;CDERR_MEMLOCKFAILURE;CDERR_INITIALIZATION;

    CDERR_NOHINSTANCE;CDERR_LOCKRESFAILURE;CDERR_NOHOOK

    CDERR_LOADRESFAILURE;CDERR_NOTEMPLATE;CDERR_LOADSTRFAlLURE;

    CDERR_STRUCTSIZE;CDERR_MEMALLOCFAILURE

    備註Color對話框不支持彩色調色板,對話框提供的顏色的選擇僅限於系統顏色和這些顏色的混合值,可以爲對話框提供一個CCHOOKProc程序,此掛鉤程序能處理髮送給對話框的信息。通過建立CHOOSECOLOR結構中Flags成員的CC_ENABLEHOOK標誌和指定IpfnHook成員中掛鉤程序的地址,可使掛鉤程序生效。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:2.0及以上版本;頭文件:commdlg.h;庫文件:commdlg32.lib;Unicode:在Windows NT環境中實現爲Unicode和ANSI兩個版本。

" No Yes Yes
85 ChooseFont 建立一個字體選擇對話框 "    函數功能:該函數創建一個使用戶選擇邏輯字體屬性的對話框,這些屬性包括字體名稱、字體風格(如粗體、斜體或正常體)、字號、效果(如強調線,下劃線或字體顏色)和手寫體(或字符集)。

    函數原型:BOOL ChooseFont(LPCHOOSEFONT Ipcf);

    參數:

    Ipcf:指向一個含有初始化對話框信息的CHOOSEFONT結構。當返回ChooseFont函數時,此結構含有用戶對字體選擇的信息。

    返回值:如果用戶點擊對話框的OK按鈕,返回值爲非零值,CHOOSEFONT結構中的成員表明用戶的選擇。如果用戶取消或關閉Font對話框或出現錯誤信息,返回值爲零。若想獲得更多錯誤信息。請調用CommDlgExtendedError函數,其返回值如下:

    CDERR_FINDRESFAILURE;CDERR_NOHINSTANCE;CDERR_INITIALIZATION;CDERR_NOHOOK

    CDERR_LOCKRESFAILURE;CDERR_NOTEMPLATE;CDERR_LOADRESFAILURE;

    CDERR_STRUCTSIZE;CDERR_LOADSTRFAILURE;CDERR_MAXLESSTHANMIN

    CDERR_MEMALLOCFAILURE;CDERR_NOFONTS;CDERR_MEMLOCKFAILURE

    備註:可以爲Font對話框提供一個CFHOOKProc掛鉤程序。此掛鉤程序能夠處理髮送給對話框的信息。

    通過建立CHOOSEFONT結構中Flags成員的CE ENABLEHOOK標誌和指定IPfn Hook成員中掛鉤程序的地址可以使掛鉤程序有效。

    掛鉤程序可以把信息WM_CHOOSEFONT_GETLOGLONT,WM_CHOOSEFONT_SETFLAGS和

    WM_CHOOSEFONT_SETLOGFONT消息發送給對話框以便得到和創建當前值和對話框的圖標。

    速查:Windows NT:3.1及以一上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:Commdlg.h;庫文件:comdlg32.lib;Unicode:在Windows NT環境中實現爲Unicode和ANSI兩個版本。

" No Yes Yes
86 ChoosePixelFormat   No Yes Yes
87 Chord 畫一條弦  Yes Yes Yes
88 ClearCommBreak 恢復字符傳輸  Yes Yes Yes
89 ClearCommError 允許出錯後進行通信  No Yes Yes
90 ClearEventLog 消除事件記錄  No Yes Yes
91 ClientToScreen 將客戶點轉換成屏幕座標  Yes Yes Yes
92 ClipCursor 將光標限制在矩形內 "    函數功能;該函數把光標限制在屏幕上的一個矩形區域內,如果調用SetCursor或用鼠標設置的一個隨後的光標位置在該矩形區域的外面,則系統自動調整該位置以保持光標在矩形區域之內。

    函數原型:BOOL ClipCursor(CONST RECT* lpRect);

    參數:

    IpRect:指向RECT結構的指針,該結構包含限制矩形區域左上角和右下角的屏幕座標,如果該指針爲NULL(空),則光標可以在屏幕的任何區域移動。

    返回值:如果成功,返回值非零;如果失敗,返回值爲零。若想獲得更多錯誤信息,請調用GetLastError。

    備註:光標是一個共享資源,如果一個應用控制了光標,在將控制轉向另一個應用之前,必須要使用ClipCursor來釋放光標,該調用過程必須具有對窗口的WINSTA_WRITEATTRIBUTES訪問權。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件;user32.lib。

" Yes Yes Yes
93 CloseClipboard 關閉剪貼板  Yes Yes Yes
94 CloseDesktop   No Yes Yes
95 CloseDriver 光閉可裝入的多媒體驅動程序  Yes Yes Yes
96 CloseEnhMetaFile 光閉增強型圖元文件DC  No Yes Yes
97 CloseEventLog 光閉事件記錄句柄  No Yes Yes
98 CloseFigure 光閉路徑中的一個數  No Yes Yes
99 CloseHandle 關閉打開的對象句柄  No Yes Yes
100 CloseMetaFile 關閉WINDOWS圖元文件DC  Yes Yes Yes
101 ClosePrinter 關閉打開的打印機  No Yes Yes
102 CloseServiceHandle 關閉Service Control Manager對象  No Yes Yes
103 CloseWindow 最小化窗口 "    函數功能:該函數最小化指定的窗口,但並不銷燬該窗口。

    函數原型:BOOL CloseWindow(HWND hWnd);

    參數:

    hWnd:將要最小化的窗口的句柄。

    返回值:如果函數成功,返回值爲非零;如果函數失敗,返回值爲零。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:窗口尺寸被最小化成一個圖標,並移動到屏幕的圖標區域。系統顯示窗口的圖標而不顯示窗口,並在圖標下顯示窗口標題。應用程序必須使用DestroyWindow函數銷燬窗口。

    速查:WindowS NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持;頭文件:Winuser.h;庫文件:user32.lib

" Yes Yes Yes
104 CloseWindowStation   No Yes Yes
105 ColorMatchToTarget 控件預覽設備描述表  No Yes Yes
106 CombineRgn 將兩個區域合成一個區域  Yes Yes Yes
107 CombineTransform 將兩個變換式結合在一起  No Yes Yes
108 CommConfigDialog   No Yes Yes
109 CommDlgExtendedError 返回一個對話框錯誤代碼 "    函數功能:該函數返回一個對話框錯誤代碼,此代碼顯示出在執行下列對話框函數時要出現的最近的錯誤:ChooseColor,GetOpenFileName,ChooseFont,GetSaveFileName,FindText,PrintDlg,ReplaceText,PageSetpDlg。

    函數原型:DWORD CommDlgExtendedError(VOID)

    參數:無。

    返回值:如果最近一次對話框函數調用成功,返回值不確定,如果對話框函數因爲用戶關閉或取消對話框而返回FALSE,則返回值爲零。否則返回值是非零錯誤代碼。有關更多的信息,參見下列說明部分。

    備註:CommDlgExtendedError函數可以返回公共對話框函數中的一般的錯誤代碼。

    另外,也返回某一具體公共對話框的錯誤代碼。由CommDlgExtendedError返回的錯誤代碼在CDERR.H文件裏定義:

    下面是CommDlgExtendedError的返回錯誤代碼值。

    CDERR_DIALOGFAILURE:對話框不能創建。DialogBox函數對對話框函數的調用失敗,例如如果公共對話框的調用指定一個無效的窗口句柄,則此種錯誤產生。

    CDERR_FINDRESFAILURE:公共對話框函數沒能找到指定資源。

    CDERR_INITIALIZATION:公共對話框函數在初始化過程中失敗。當沒有足夠內存時此錯誤出現。

    CDERR_LOADRESFAILURE:公共對話框函數沒能調出指定的資源。

    CDERR_LOADSTRFAILURE:公共對話框函數沒能調出指定的串。

    CDERR_LOCKRESFAILURE:公共對話框函數沒能銷定指定的資源。

    CDERR_EMAILCOLFAILURE;公共對話框函數不能爲內部結構分配內存。

    CDERR_NOHINSTANCE:在對應的公共對話框初始化結構Flags成員中設置ENABLETEMPLATE標誌,但是在提供相應的事例句柄時出錯。

    CDERR_NOHOOK:在對應的公共對話框初始化結構Flags成員中設置ENABLEHOOK標誌,但是在提供相應的掛鉤程序指針時出錯。

    CDERR_NOTEMPLATE:在對應的公共對話框初始化結構Flag成員中設置ENABLETEMPLATE標誌,但是在提供相應的模板時出錯。

    CDERR_REGISTERMSGFAIL:當RegisterWindowMessage函數被公共對話框函數調用時,該函數返回錯誤代碼。

    CDERR_STRUCTSIZE:對應的公共對話框初始化結構舊IStructSize成無效成員。

    下列爲Print Dlg函數的返回值。

    PDERR_CREATEICFAILURE:當PrintDlg函數想創建一個信息表時出錯。

    PDERR_DEFAIKTDFFERENT:利用在DEVNAMES結構中wDefault成員指定的DN_DEFAULTPRN標誌,可以調用PrintDlg函數。但是被另外一個結構成員描述的打印機與當前缺省的打印機不匹配。(此錯誤發生在儲存DEVNAMES結構和用戶利用控制面板改變缺省打印機時)。要使用DEVNAMES結構所描述的缺省打印機,必須清空DN_DEFAULTPRN標誌並且要再一次調用PrintDlg。要使用缺省打印機,必須用NULL取代DEVNAMES結構俐DEVMODE結構,如果此結構存在的話),並且要再一次調用PrintDlg函數。

    PDERR_DNDMMISMATCH:OEVMOOE和DEVNAMFS結構中的數據描述了兩種不同的打印機。

    PDERR_GETDEVMODEFAIL;打印機驅動程序不能初始化一個DEVMODE結構(這種錯誤代碼只用於Windows 3.0及以上版本的打印機驅動程序)。

    PDERR_INITFAILURE:PrintDlg函數不能初始化,並且沒有更多的錯誤代碼來描述此錯誤。

    PDERR_LOADDRVFAILURE:PrinDlg函數不能爲指定的打印機裝備設備驅動器。

    POERR_NODEFAULTPRN:不存在缺省打印機。

    POERR_NODEVKES:未發現打印機驅動程序。

    PDERR_PARAEFAILURE:PrintDlg函數在分析WIN.INI文件中的[devces]部分的字符串時出錯。

    PDERR_PRINTERNOTFOUND;WIN.INI文件的[device]部分不包含所請求打印機的入口

    PDERR_RETDEFFAILURE_PD:RETURNDEFAULT標誌被指定在PRINTDLG結構的Flags成員中。但hDevMode或hDevNames成員不是NULL。

    PDERR_SETUPFAILURE:PrintDlg函數在裝載所需要的資源時出錯。

    下面是ChooseFont函數的返回值。

    CFERR_MAXLESSTHANMIN:CHOOSEFONT結構中的nSizeMax成員所給定的大小小於nSizeMin成員給定的大小。

    CFERR_NOFONTS:不存在字體。

    下面是GetOpenFileName和GetSaveFileName函數的返回值。

    FNERR_BUFFERTOOSMALL:由OPENFILENAME結構的lpstrFile成員指向的緩衝區對由用戶指定的文件名來說太小。前兩種IpstrFile緩衝區的字節含有一個指定大小的整型值。用來存放全文件名。

    FNERR_INVAIDFILENAME:文件名無效。

    FNERR_SUBASSFAILIIRE:由於沒有足夠內存,在對列表框分類時出錯。

    下面是FindText和ReplaceText函數的返回值。

    FRERR_BUFFERLENGTHZERO:結構FINDREPLACE中的一個成員指向一個無效的緩衝區。

    在Windows CE中Windows CE支持另外的四種返回值,如下:

    CDERR_REGISTRYFAILURE 公共對話框函數無法讀註冊表。

    下面的一些返回值只適用於PrintDlg函數。

    PDERR_NOPORTS:沒有註冊的端口PDERR_NOPRINTERS:沒有註冊的打印機

    PDERR_CREATEDCFAILURE:CreateDC調用失敗

    Windows CE不支持CDERR_LOADSTRFAILURE、CDERR_MEMLOCKFAILURE或CDERR_REGISTERMSGFAIL返回值。Windows CE也不支持任何PDERR_錯誤值。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本:頭文件:commdlg.h;庫文件:comdlg32.lib。

" No Yes Yes
110 CommandLineToArgv   No Yes Yes
111 CompareFileTime 比較兩個64位文件時間  No Yes Yes
112 CompareString 比較兩個局部指定字符串  No Yes Yes
113 ConfigurePort 配置打印機端口  No Yes Yes
114 ConnectNamedPipe 等待要連接的客戶機  No Yes Yes
115 ConnectToPrinterDlg 顯示瀏覽對話並連接網絡打印機  No Yes Yes
116 ContinueDebugEvent 使調試線索繼續  No Yes Yes
117 ControlService 向服務器發送控件  No Yes Yes
118 ConvertDefaultLocale 將缺省局部轉換爲實際的局部值  No Yes Yes
119 CopyAcceleratorTable 拷貝加速鍵表 "    函數功能:拷貝加速鍵表。拷貝加速鍵表函數拷貝指定的加速鍵表。此函數用於獲得與一加速鍵表句柄相對應的加速鍵表數據,或用於確定加速鍵表數據的大小。

    函數原型:int CopyAcceleratorTable(HACCEL hAccelSrc,LPACCEL IpAcceIDst,int cAccelEntries);

    參數:

    hAccelSrc:欲拷貝的加速鍵表的句柄。

    IpAccelDst:指向ACCEL結構數組的指針,該結構數組中存在着將要拷貝的加速鍵表信息。

    cAccelEntries:指定由IpAcceIDst參數指向的欲拷貝到緩衝區的ACCEL結構的個數。

    返回值:如果IpAccelDst爲空,則返回值給出初始加速鍵表入口的個數。否則,給出己拷貝的加速鍵表的入口個數。

    速查:WindOWS NT:3.1及以上版本:Windows:95及以上版本;Windows CE:不支持;頭文件:Winuser.h;庫文件:user32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
120 CopyCursor 複製一個光標 "    函數功能:該函數複製一光標。

    函數原型:HCURSOR CopyCursor(HCURSOR pcur);

    參數:

    pcur:被複制光標的句柄

    返回值;如果成功,返回值是複製光標的句柄;如果失敗,返回值爲NULL(空)。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註;CopyCursor函數能使一個應用程序或一個動態連接庫(OLL)得到一個屬於另一模塊的光標形狀的句柄。如果另外一個模塊被釋放,則該應用程序仍然可以使用該光標形狀。在關閉之前,一個應用程序必須調用DestroyCursor函數來釋放任何與該光標有關的系統資源。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib

" Yes Yes Yes
121 CopyEnhMetaFile 複製增強型圖元文件  No Yes Yes
122 CopyFile 複製文件  No Yes Yes
123 CopyIcon 複製圖標 "    函數功能:該函數從另外的模塊向當前模塊複製指定的圖標。

    函數原型:HICON CopyIcon(HICON hlcon);

    參數:

    hlcom:被複製圖標的句柄。

    返回值:如果函數成功,返回值是圖標副本的句柄;如果函數失效,返回值是NULL。想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:CopyIcon函數使應用程序或動態鏈接庫(DLL)能獲得另一個模塊自己擁有圖標的句柄,如果這個模塊被釋放,應用程序圖標將仍然能使用這個圖標。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
124 CopyImage 創建一個新的圖像 "    函數功能:該函數創建一個新的圖像(圖標、光標、位圖)並複製該指定圖像的屬性到新的圖像。若有必要,該函數將伸展位值以填滿新圖像所需要的尺寸。

    函數原型:HANDLE CopyImage(HANDLE hlmage,UjNT uTyPe,int cxDesired,int cyDesired,UINT fuFlags)

    參數:

    hImage:指向包含將被複製圖像的模型中的一個特例的句柄。

    uType:說明被複製圖像的類型,此參數將可能是如下值:

    IMAGE_BITMAP:表示複製一個位圖;IMAGE_CURSOR;表示複製一個光標。

    IMAGE_ICON:表示複製一個圖標。

    cxDesired:用來指定圖像所需的像素寬度。

    cyDesired:用來指定圖像所需的像素高度。

    fuFlags:指定下列複合值,其含義具體如下:

    LR_COPYDELETEORG:表示創建一個副本後刪除原始圖像。

    LR_COPYRETURNORG;表示創建一個圖像的精確副本,而忽略參數cxDesired和cyDesired。

    LR_MONOCHROME:表示創建一個新的單色圖像。

    LR_COPYFROMRESOURCE;表示試圖從原始資源文件中再裝載圖標或光標資源而不是簡單的複製當前圖像。這使得在含有多種尺寸資源的資源文件中再創建一個不同尺寸的副本時非常有用。若沒有這個標誌,Copylmage函數將伸展原始圖像到新的尺寸;若此標誌被設置,Copylmage函數將在資源文件中選擇使用最接近所期待尺寸的值。

    此函數只有在Loadlcon、LoadCursor或Loadlmage函數中的hlmage參數被裝載成LR_SHARED值時才運行成功的。

    返回值:如果函數運行成功,其值將返回最新創建圖像的句柄;如果函數運行失敗,其值將返回空。若想獲得更多的錯誤信息,請調用GetLastError函數。

    注意:當使用完資源後,可以調用下表中列舉的函數以釋放相關內存。

    Resource Release function資源釋放函數:Bitmap DeleteObject 位圖:DeleteObject;

    Cursor DestroyCursor 光標:DestroyCursorr;lcon Destroylcon 圖標: Destroylcon。

    當過程終止時,系統將自動刪除這些資源。因而,調用相關函數可以節省內存空間且減少過程工作設置所需空間的大小。

    速查:Windows NT 3.5 Windows 95以上,頭文件:winuserh;庫文件:user32.lib。

" No Yes Yes
125 CopyLZFile   No Yes Yes
126 CopyMetaFile 複製Windows圖元文件  Yes Yes Yes
127 CopyRect 複製矩形大小  Yes Yes Yes
128 CopySid 將SID複製到緩衝區中  No Yes Yes
129 CountClipboardFormats 返回剪貼板格式的數量  Yes Yes Yes
130 CreateAcceleratorTable 建立加速鍵表 "    函數功能:創建加速鍵表。該函數創建一個加速鍵表。

    函數原型:HACCEL CreateAcceleratorTable(LPACCEL lpaccl,int cEntries);

    參數:

    Ipaccl:指向描述加速鍵表的ACCEL結構數組的指針。

    cEntires:指定數組中ACCEL結構的個數。

    返回值:如果函數調用成功,則返回值爲所創建的加速鍵表的句柄;否則,返回值爲空。若想獲得更多的錯誤信息,請調用GetLastError。

    備註:關閉應用程序之前,必須調用DestroyAcceeleratorTable函數撤消所有由CreatedAccelerstorTable函數創建的加速鍵表。

    速查:Windows NT:3.1u及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本:頭文件:winuser.h;庫文件:USer32.lib; Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
131 CreateBitmap 建立獨立於設備的內存位圖  Yes Yes Yes
132 CreateBitmapIndirect 用BITMAP結構建立位圖  Yes Yes Yes
133 CreateBrushIndirect 用指定屬性建立一個刷子  Yes Yes Yes
134 CreateCaret 爲系統脫字號建立新的形狀 "    函數功能;該函數爲系統插入標記創建一個新的形狀,並且將插入標記的屬主關係指定給特定的窗口。插入標記的形狀。可以是線、塊或位圖。

    函數原型:BOOL CreateCaret(HWND hWnd,HBIBMAP hBitmap,int nHeight);

    參數:

    hWnd:指定傭有插入標記的窗口。

    hBitmap:標識用於定義插入標記形狀的位圖。如果該參數爲NULL,那麼插入標記是實心的(原色),如果該參數爲(HBITMAP)1,那麼插入標記是灰色的。如果該參數是位圖句柄,那麼插入標記就是指定的位圖。位圖句棲必須已中由CreateBitmap、CreatDIBitmap或LoadBitmap函數創建。

    如果hBitmap爲位圖句棲,那麼CreateCaret函數將忽略參數nWidth和nHeight,因爲該位圖定義了自己的寬度和高度。

    nWidth:按邏輯單位指定插入標記的寬度,如果該參數爲零,那麼寬度就設爲系統定義的窗口邊界寬度。如果hBitmap是位圖句柄,那麼函數CreateCaret忽略該參數。

    nHeight:按邏輯單位指定插入標記的高度。如果該參數爲零,那麼高度就設爲系統定義的窗口邊界高度如果hBitmap是位圖句柄,那麼函數CreateCaret忽略該參數。

    返回值:如果函數執行成功,返回值爲非零;如果函數執行失敗,那麼返回值爲零。若想獲取更多錯誤 信息,請調用GetLastError函數。

    備註:參數nWidth和nHeight指定了插入標記的寬度和高度,這些值按邏輯單位表示;按像素表示的真正 寬度和高度與窗口的映射模式有關。

    CreateCaret函數自動清除前一個插入標記的形狀,不考慮擁有該插入標記的窗口。新創建的插入標記一直隱藏,直到應用程序調用ShowCaret函數使該插入標記可見爲止。

    系統爲每個隊列提供一個插入標記。窗口只有在它有鍵盤焦點(focus)或者它是活動窗口時才創建插入標記。該窗口應在鍵盤焦點消失或窗口變爲不活動之前,清除插入標記。

    可以通過使用GetSystemMetrics函數,並指定SM_CXBORDER和SM_CYBORDER值來檢索系統窗口邊界的寬度或高度。使用窗口邊界的寬度或高度可以保證插入標記在高分辨率屏幕上可見。

    對於Windows CE:Windows CE不支持hBitmap參數,並且該參數應設爲NULL。Windows CE缺省的是實心(Solid)插入標記。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
135 CreateColorSpace 建立邏輯色影區域  No Yes Yes
136 CreateCompatibleBitmap 建立與DC相兼容的位圖  Yes Yes Yes
137 CreateCompatibleDC 建立與指定DC相兼容的DC  Yes Yes Yes
138 CreateConsoleScreenBuffer 將句柄返回給新的屏幕緩衝區  No Yes Yes
139 CreateCursor 用指定的尺寸建立一個光標 "    函數功能:該函數創建一個指定大小、位模式和熱點的光標。

    函數原型:HCURSOR CreateCursor(HINSTANCE htnst,int xHotSpot;int yHotSpot;int nWidth;iut nHeight,CONST VOID *pvANDPlane,CONST VOID *pvXORPlane);

    參數:

    hlnst:創建光標的應用程序的當前事例句柄。

    xHotSpot:指定光標熱點的水平位置。

    yHotSpot:指定光標熱點的垂直位置。

    nWidth:以像素爲單位指定光標的寬度。

    nHeight:以像素爲單位指定光標的高度。

    pvANDPlane:指向一個字節數組的指針,該數組包含光標AND掩碼的位值,就象設備相關的單色位圖一樣。

    pvXORPlane:指向一個字節數組的指針,該數組包含光標XOR掩碼的位值,就象設備相關的單色位圖一樣。

    返回值:如果成功,返回光標的值;如果失敗,返回值爲NULL(空),若想獲得更多錯誤信息,調用GetLastError函數。

    備註:nWidth和nHeight參數必須指定一個當前顯示驅動支持的寬度和高度,因爲系統不能創建一個其他尺寸的光標,爲了確定顯示驅動所支持的寬度和高度,請使用GetSystemMetrics函數,指定SM_CXCUROR或SM_CYCURSOR值。在一個應用程序關閉之前,必須調用DestroyCursor函數來釋放與光標有關的任何系統資源。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
140 CreateDC 建立設備描述表  Yes Yes Yes
141 CreateDIBPatternBrush 從DIB中建立圖案刷子  Yes Yes Yes
142 CreateDIBPatternBrushPt 從位圖中建立邏輯刷子  No Yes Yes
143 CreateDIBSection   No Yes Yes
144 CreateDIBitmap 從DIB spec中建立位圖句柄  Yes Yes Yes
145 CreateDesktop   No Yes Yes
146 CreateDialogIndirectParam 從內存模塊中建立非模態對話框 "    函數功能:該函數從內存中的對話框模板上創建一個無模式對話框,在顯示對話框之前,函數把應用程序定義的值作爲WM_INITDIALOG消息的IParam參數傳送到對話框過程。應用程序可用此值初始化對話框控制。

    函數原型:HWND CreateDialogIndirectParam(HINSTANCE hinstance,LPCDLGTEMPLAT IPTemPIate,HWNDhWndParent,DLGPROC IpDialogFunc,LPARAM IParaminit);

    參數:

    hinstance:標識將創建對話框的模塊的事例。

    IpTemplate:指向一個含有模板的全局內存對象的指針,CreateDialogIndirectParam用該模板來創建對話框。

    對話框模板由描述對話框的標題組成,跟隨着標題之後的是描述每一個控制的一個或多個數據塊,模板可以用標準格式或擴展格式。

    在標準模板中,標題是由DLGTEMPLATE結構跟隨一個變長數組組成。每個控制的數據是由DLGTEMPLATE結構跟隨一個變長數組組成。

    在擴展模板中,標題用DLGTEMPLATEEX格式,且控制定義用DLGITEMPLATEEX格式。

    CreateDilogIndirectParam函數返回後,可釋放模板,此模板僅用於啓動對話框。

    HWndParent:標識擁有對話框的窗口。

    IpDialogFunc:指向對話框過程的指針,有關更多的對話框過程的信息,參見DialogProc。

    lParamlnit:指定傳遞到WM_INIDIALOG消息的IParam參數中對話框中的值。

    返回值:如果函數調用成功,則返回值爲指向對話框的句柄:如果函數調用失敗,則返回值爲NULL。若想獲得更多的錯誤信息,可調用GetLastError函數。

    備註:CreatDialogIndirectParam函數使用createWindowEx函數來創建對話框,然後該函數把一個WM_INTDIALOG消息發送到對話框應用程序,如果模板指定DS_SETFONT類型,則函數也把一個WM_SETFONT消息發送到對話框應用程序。如果模板指定WS_VISBLE類型,則函數顯示對話框,最後CreatDialogdirectParam返回指向對話框的窗口句柄。

    CreatDialogIndirectParam函數返回之後,可用ShowWindow函數來顯示對話框(如果還沒有顯示)。用DestroyWindow函數來清除對話框。

    在標準對話框模板中,DLGTEMPLATE結構和每一個DLGITEMTEMPLATE結構必須按DWORD邊界對齊,遵循DLGEMTEPLATE結構而創建的數據數組也一定按DWORD邊界對齊。模板中其他所有變長數組一定要按DWORD邊界進行調整。

    在擴展對話框模板上DLGTEMPLATEEX結構和每一個DLGITEMTEMPLATEEX結構必須按DWORD邊界對齊,遵循DLGEMTEPLATE結構而創建的數據數組也一定按DWORD邊界對齊。模板中其他所有變長數組一定要按DWORD邊界進行調整。

    所有對話框模板的字符串,例如對話框和按鈕的標題,一定是Unicode字符串。使用

    MultiByteTowidechar函數產生這些Unicode字符串可以創建在Windows和Windows NT兩種系統上工作的代碼。

    Windows 95和以後版本:系統可支持每個對話框模板最多爲255個控制。爲把多於255個控制放入對話框,可以在WM_INITDLALOG消息處理器中創建控制,而不是把它們放入模板中。

    Windows CE:可視屏幕面積之外的對話框不能自動地被重新定位。

    如果用戶在對話框有輸入焦點的同時按下Alt+H,則系統把一個WM_HELP消息傳送到對話過程,應用程序應該通過顯示對話框描述表積極幫助來響應此消息。

    DLGTEMPLATE結構的類型成員不支持下列類型:

    DS_SETFONT:在對話框中不能設置字體。

    DS_RECURSE:不需要。任何一個子對話框可自動地被看作遞歸對話框。

    DS_CONTROL:不需要。

    WS_EX_CONTROLPARENT:所有對話框都被自動假設爲控制母體。用DS_CENTER類型可得到缺省位置定位。如果沒有指定WS_CHLD.則假設爲WS_POPUP類型。

    速查:WindowsNT:3.1及以上版本:Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:winuse.h庫文件:user32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
147 CreateDialogParam 建立非模態對話框 "    函數功能:該函數根據對話框模板資源創建一個無模式的對話框。在顯示對話框之前,函數把一個應用程序定義的值作爲WM_INITDIALOG消息IParam參數傳到對話框過程應用程序可用此值來初始化對話框控制。

    函數原型:HWND CreateDialogParam(HINSTANCE hInstance,LPCTSTR IpTemplateName,HWND hWndParent,DLGPROCIpDialogFunc, LPARAM dwlniParam);

    參數:

    hInstance:標識一個模塊的事例,該模塊的可執行文件含有對話框模板。

    IpTemplateName:標識對話框模板。此參數可以指向一個以NULL結尾的字符串的指針,該字符串指定對話框模板名,或是指定對話框模板的資源標識符的一個整型值。如果此參數指定了一個資源標識符,則它的高位字一定爲零且低位字一定含有標識符。一定用MAKENTRESOURDE宏指令創建此值。

    HwndParent:指定擁有對話框的窗口。

    IpDialogFunc:指向對話框過程的指針。有關對話框過程的更詳細的信息,請參見DialogProc。

    dwlnitParam:指定傳遞到WM_INITDIALOG消息的IParam參數中的對話框過程的值。

    返回值:如果函數調用成功則返回值爲指向對話框的窗口句柄。如果函數調用失敗則返回值爲NULL。

    若想獲得更多錯誤信息,請調用GetlastError函數。

    備註:CreateoialogParam函數用 CreateWindowEx函數創建對話框。CreateDialogParam函數然後把一個WM_INITDIALOG消息(和一個WM_SETFONT消息,如果模板指定DS SETFONT類型)傳遞到對話框過程。如果模板指定WS_VISIBLE類型,則函數顯示對話框,最後CreateDialogParam返回對話框的窗口句柄。

    CreateDialogParam返回之後應用程序用ShowWindow顯示對話框(如果還沒有顯示)。應用程序用DestroyWindoW函數來清除對話框。

    Windows 95和以後版本:系統可支持每個對話框模板中最多255個控制。爲把大於255個的控制放入對話框,需要在WM_INITDIALOG消息處理器中創建控制,而不是把他們放入模板中。

    Windows CE:IPTemplateName參數指向的對話框模板中DLGTEMPLATE結構並不支持所有的類型。

    速查:Windows NT:3.1 及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件;winuser.h;庫文件:use32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
148 CreateDirectory 建立一個新目錄  No Yes Yes
149 CreateDirectoryEx 用模板屬性建立一個目錄  No Yes Yes
150 CreateDiscardableBitmap 建立可放棄位圖  Yes Yes Yes
151 CreateEllipticRgn 建立橢圓區域  Yes Yes Yes
152 CreateEllipticRgnIndirect 建立橢圓區域  Yes Yes Yes
153 CreateEnhMetaFile 建立增強型圖元文件DC  No Yes Yes
154 CreateEvent 返回新事件對象一個句柄  No Yes Yes
155 CreateFile 建立、打開或截斷文件  No Yes Yes
156 CreateFileMapping 返回新文件映像對象一個句柄  No Yes Yes
157 CreateFont 建立邏輯字體  Yes Yes Yes
158 CreateFontIndirect 用LOGFONT結構建立字體  Yes Yes Yes
159 CreateHalftonePalette 爲設備描述表建立中間色調調色板  No Yes Yes
160 CreateHatchBrush 建立影線刷子  Yes Yes Yes
161 CreateIC 建立信息上下文  Yes Yes Yes
162 CreateIcon 建立有指定屬性的圖標 "    函數功能:該函數按指定的大小、彩色、位創建圖標。

    函數原型:HCON CreateIcon(HINSTANCE hInstance,int nWidth,int nHeight,BYTE cPlanes,BYTE cBitsPixe,CONS TBYTE *IpbANDbits,CONST BYET *IpbXORbits);

    參數:

    hInstance:創建圖標模塊事例的句柄。

    nWidth:指定目標寬度(像素)。

    nHeight:指定圖標高度(像素)。

    cPlanes:指定圖標位掩碼異或的位面數。

    cBitsPixel:指定圖標位掩碼異或中每像素的位數。

    IpbAnDbits:某字節數組的指針,這個數組包含一個圖標位與的位值。這個位掩碼描述一個單色位圖。

    IpbXORbits:某字節數組的指針,這個數組包含一個目標位異或的位值。這個位掩碼描述一個單色位圖或設備相關顏色位圖。

    返回值:如果函數成功返回值是圖標的句柄。如果函數失效,返回值是NULL。想獲得更多的錯誤信息,請調用GetLastError函數。

    備註: nWidth和nHeight參數受當前顯示驅動程序指定的寬度和高度限制,因爲系統不能創建其他大小的圖標。使用GetSystemMetric函數確定顯示驅動程序支持的寬度和高度。

    CreateIcon應用下列位與和位異或的真值表:

    OR XOR 顯示

    0 0 黑色

    0 1 白色

    1 0 直接顯示屏

    1 1 反轉顯示屏

    速查:windows NT:3.1及以上版本;Windows:95N以上版本:Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
163 CreateIconFromResource 建立圖標或光標 "    函數功能:該函數通過描述圖標的資源位創建圖標或光標。

    函數原型:HICON CreateIconFuomResource(PBYTE presbits,DWORD dwResSize,BOOL flcon,DWORD dwVer);

    DresDits:包含圖標或光標資源位緩衝區的指針典型應用,可通過調用LOOKuplconldFromDirectory 或LoadResource 函數載入這些位(在Windows95也可調用LookuplconldFromDirectorvEx)。

    DwResSize:以字節爲單位指定由DresbitS參數指定的位集合的大小。

    dwVer:指定由presbits參數指定的資源位的圖標或光標格式的的版本號。參數可能是下列的值:

    格式 dwVer

    Winsows2.x 0×00020000

    Winsows3.x 0×00030000

    所有基於 Microsoft Win32的應用程序使用Windows 3.x格式的圖標和光標。

    返回值:如果函數成功返回值是圖標或光標的句柄;如果函數失效,返回值是NULL。想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:CreateIconFromResource,CreateIconFromResourceEx,CreateIconIndirect,GetIconInfo,LookupIconIdFromDirectory,LookupIconIdFromDirectoryEx函數允許外殼應用程序和圖標瀏覽器在整個系統中檢查和使用資源。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" No Yes Yes
164 CreateIconIndirect 建立圖標或光標  No Yes Yes
165 CreateIoCompletionPort   No Yes Yes
166 CreateMDIWindow 建立新的MDI窗口 "    函數功能:該函數創建一個多文檔接口MDI的子窗口。

    函數原型:HWND GreateMDIWindow(LPTSTR IpClassName,LPTSTR IpWindowName,LPTSTR IpWindowName,DWORD dwStyle,int X,int Y,intn Width,int nHeight,HWND hWndParent,HINSTANCE hInstance,LPARAM IParam);

    參數:

    lpClassName:以“/O”爲結尾的字符串指針,該字符串指定MDI子窗口的窗口類。該類名必須已通過調用 RegisterClassEx函數註冊過。

    lpWindowsName:以“/O”爲結尾的字符串指針,該字符串表示窗口的名字。系統在子窗口的標題條中顯示此名字。

    dwStyle:規定MDI子窗口形式。如果MDI客戶窗口是以MDIS-ALLCHILDSTYLES窗日形式創建的,這個參數可以是在Createwindow函數描述中列出的窗口形式的任何組合;否則,這個參數必須取下列值之一或多個組合:

    WS_MINIMIZE:創建一個初始狀態爲極小化的MDI子窗口。

    WS_MAXIMIZE:創建一個初始狀態爲極大化的MDI子窗口。

    WS_HSCROLL:創建一個帶有水平流動條的MDI子窗口。

    WS_VSCROLL:創建一個帶有垂直流動條的MDI子窗口。

    X:指定MDI子窗口在客戶座標系中水平位置的初值。如果此參數值爲CW_USEDEFAULT,MDI子窗口被分配爲水平位置的缺省值。

    Y:指定MDI子窗口在客戶座標系中垂直位置的初值。如果此參數爲CW_USEDEFAULT,MDI子窗口被分配爲垂直位置的缺省值。

    nWidth:指定MDI子窗口的初始寬度,單位爲設備單位。如果此參數值爲CW_USEDEFAULT,MDI子窗口被分配爲缺省寬度。

    nHeight:指定MDI子窗口的初始高度,單位爲設備單位。如果此參數值爲CW_USEDEFAULT,MDI子窗口被分配爲缺省高度。

    hWndParent:指向MDI客戶窗口的句柄,該窗口爲新的MDI子窗口的父窗口。

    hInstance:指向創建MDI子窗口的應用事例的句柄。

    lParam:指定一個應用程序定義的值。

    返回值:如果函數調用成功,返回值爲所創建窗口的句柄;否則,返回值爲NULL。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:使用CreateMDIWindow函數與發送WM_MDCREATE消息給一個MDI客戶窗日相似,區別是函數可以在不同的線程中創建一個MDI子窗口,而消息不可以。

    Windows 95。系統最多可以支持16,364個窗口句柄。

    速查:Windows NT: 3.1及以上版本; Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;輸入庫:user32.lib;Unicoae:在Windows NT環境中以Unicode和ANSI方式實現。

" No Yes Yes
167 CreateMailslot 建立Mailsolt  No Yes Yes
168 CreateMenu 建立菜單 "    函數功能:該函數創建一個菜單。此菜單最初是空的,但可用函數InserMenultem,AppendMenu,和lnsertMenu來填入菜單項。

    函數原型:HMENU CreateMenu(VOID)

    參數:無。

    返回值:如果函數調用成功,返回值是新創建菜單的句柄。如果函數調用失敗,返回值是NULL。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:與被分配給一個窗日的菜單相聯繫的資源會被自動釋放。如果此菜單未被分配給一個窗口,應用程序必須在關閉之前釋放與菜單相連的資源。應用程序通過調用函數DestroyMenu來釋放菜單資源。

    Windows 95環境下,系統可支持最多16,364個菜單句柄。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
169 CreateMetaFile 建立WINDOWS圖元DC  Yes Yes Yes
170 CreateMutex 將句柄返回給MUTEX對象  No Yes Yes
171 CreateNamedPipe 建立命名管道實例  No Yes Yes
172 CreatePalette 建立邏輯色彩調色板  Yes Yes Yes
173 CreatePatternBrush 從位圖中建立圖案刷子  Yes Yes Yes
174 CreatePen 建立邏輯畫筆  Yes Yes Yes
175 CreatePenIndirect 用LOGPEN結構建立畫筆  Yes Yes Yes
176 CreatePipe 建立匿名管道  No Yes Yes
177 CreatePolyPolygonRgn 建立由多邊形組成的區域  Yes Yes Yes
178 CreatePolygonRgn 建立多邊形區域  Yes Yes Yes
179 CreatePopupMenu 建立彈出式菜單 "    函數功能:該函數創建一個下拉式菜單、子菜單或快捷菜單。此案單最初是空的,但可用函數InserMenultem來插入或追加菜單項。也可用函數InsertMenu來插人菜單項,用AppendMenu來追加菜單項。

    函數原型:HMENU CreatePopupMenu(VOID)

    參數:無。

    返回值:如果函數調用成功,返回值是新創建菜單的句柄。如果函數調用失敗,返回值是NULL。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:一個應用程序可增加新菜單到已存在的菜單上,或者可以調用函數TrackPopupMenuEx或TrackPopupMenu來顯示快捷菜單。與被分配給一個窗口的菜單相聯繫的資源會被自動釋放。如果此菜單未被分配給一個窗口,應用程序必須在關閉之前釋放與菜單相連的資源。應用程序通過調用函數DestroyMenu來釋放菜單資源。Windows95環境下,系統可支持最多16,364個菜單句柄。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本:頭文件:winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
180 CreatePrivateObjectSecurity 分配並初始化保護SD  No Yes Yes
181 CreateProcess 建立新的進程和線索對象  No Yes Yes
182 CreateProcessAsUser 建立指定用戶的新進程  No Yes Yes
183 CreateRectRgn 建立矩形區域  Yes Yes Yes
184 CreateRectRgnIndirect 用RECT結構建立一個區域  Yes Yes Yes
185 CreateRemoteThread 在另一進程中建立線索  No Yes Yes
186 CreateRoundRectRgn 建立圓角矩形  Yes Yes Yes
187 CreateScalableFontResource 建立帶字體信息的資源文件  Yes Yes Yes
188 CreateSemaphore 將句柄返回給新的信號量  No Yes Yes
189 CreateService 建立服務對象  No Yes Yes
190 CreateSolidBrush 用指定顏色建立實心刷子  Yes Yes Yes
191 CreateTapePartition 建立新的磁帶分區  No Yes Yes
192 CreateThread 建立新的線索  No Yes Yes
193 CreateWindowEx 創建一個窗口 "    函數功能:該函數創建一個具有擴展風格的重疊式窗口、彈出式窗口或子窗口,其他與CreateWindow函數相同。關於創建窗口和其他參數的內容,請參看CreateWindowEx。

    函數原型:HWND CreateWindowEx(DWORD dwExStle,LPCTSTR IpClassName,LPCTSTR lpWindowName,DWORD dwStyle,int x,int y,int nWidth,int nHeight,HWND hWndParent,HMENUhMenu,HANDLE hlnstance,LPVOIDlpParam);

    參數:

    dwExStyle:指定窗口的擴展風格。該參數可以是下列值:

    WS_EX_ACCEPTFILES:指定以該風格創建的窗口接受一個拖拽文件。

    WS_EX_APPWINDOW:當窗口可見時,將一個頂層窗口放置到任務條上。

    WS_EX_CLIENTEDGE:指定窗口有一個帶陰影的邊界。

    WS_EX_CONTEXTHELP:在窗口的標題條包含一個問號標誌。當用戶點擊了問號時,鼠標光標變爲一個問號的指針、如果點擊了一個子窗口,則子窗日接收到WM_HELP消息。子窗口應該將這個消息傳遞給父窗口過程,父窗口再通過HELP_WM_HELP命令調用WinHelp函數。這個Help應用程序顯示一個包含子窗口幫助信息的彈出式窗口。 WS_EX_CONTEXTHELP不能與WS_MAXIMIZEBOX和WS_MINIMIZEBOX同時使用。

    WS_EX_CONTROLPARENT:允許用戶使用Tab鍵在窗口的子窗口間搜索。

    WS_EX_DLGMODALFRAME:創建一個帶雙邊的窗口;該窗口可以在dwStyle中指定WS_CAPTION風格來創建一個標題欄。

    WS_EX_LEFT:窗口具有左對齊屬性,這是缺省設置的。

    WS_EX_LEFTSCROLLBAR:如果外殼語言是如Hebrew,Arabic,或其他支持reading order alignment的語言,則標題條(如果存在)則在客戶區的左部分。若是其他語言,在該風格被忽略並且不作爲錯誤處理。

    WS_EX_LTRREADING:窗口文本以LEFT到RIGHT(自左向右)屬性的順序顯示。這是缺省設置的。

    WS_EX_MDICHILD:創建一個MD子窗口。

    WS_EX_NOPATARENTNOTIFY:指明以這個風格創建的窗口在被創建和銷燬時不向父窗口發送WM_PARENTNOTFY消息。

    WS_EX_OVERLAPPED:WS_EX_CLIENTEDGE和WS_EX_WINDOWEDGE的組合。

    WS_EX_PALETTEWINDOW:WS_EX_WINDOWEDGE, WS_EX_TOOLWINDOW和WS_WX_TOPMOST風格的組合WS_EX_RIGHT:窗口具有普通的右對齊屬性,這依賴於窗口類。只有在外殼語言是如Hebrew,Arabic或其他支持讀順序對齊(reading order alignment)的語言時該風格纔有效,否則,忽略該標誌並且不作爲錯誤處理。

    WS_EX_RIGHTSCROLLBAR:垂直滾動條在窗口的右邊界。這是缺省設置的。

    WS_EX_RTLREADING:如果外殼語言是如Hebrew,Arabic,或其他支持讀順序對齊(reading order alignment)的語言,則窗口文本是一自左向右)RIGHT到LEFT順序的讀出順序。若是其他語言,在該風格被忽略並且不作爲錯誤處理。

    WS_EX_STATICEDGE:爲不接受用戶輸入的項創建一個3一維邊界風格

    WS_EX_TOOLWIDOW:創建工具窗口,即窗口是一個遊動的工具條。工具窗口的標題條比一般窗口的標題條短,並且窗口標題以小字體顯示。工具窗口不在任務欄裏顯示,當用戶按下alt+Tab鍵時工具窗口不在對話框裏顯示。如果工具窗口有一個系統菜單,它的圖標也不會顯示在標題欄裏,但是,可以通過點擊鼠標右鍵或Alt+Space來顯示菜單。

    WS_EX_TOPMOST:指明以該風格創建的窗口應放置在所有非最高層窗口的上面並且停留在其L,即使窗口未被激活。使用函數SetWindowPos來設置和移去這個風格。

    WS_EX_TRANSPARENT:指定以這個風格創建的窗口在窗口下的同屬窗口已重畫時,該窗口纔可以重畫。

    由於其下的同屬富日已被重畫,該窗口是透明的。

    IpClassName:指向一個空結束的字符串或整型數atom。如果該參數是一個整型量,它是由此前調用theGlobaIAddAtom函數產生的全局量。這個小於OxCOOO的16位數必須是IpClassName參數字的低16位,該參數的高位必須是O。

    如果lpClassName是一個字符串,它指定了窗口的類名。這個類名可以是任何用函數RegisterClassEx註冊的類名,或是任何預定義的控制類名。請看說明部分的列表。

    lpWindowName:指向一個指定窗口名的空結束的字符串指針。

    如果窗口風格指定了標題條,由lpWindowName指向的窗口標題將顯示在標題條上。當使用CreateWindow

    函數來創建控制例如按鈕,選擇框和靜態控制時,可使用lpWindowName來指定控制文本。

    dwStyle:指定創建窗口的風格。該參數可以是下列窗口風格的組合再加上說明部分的控制風格。

    x:參見CreateWindow。

    y:參見CreateWindow。

    nWidth:CreateWindow。

    nHeigth:參見CreateWindow。

    hWndParent:參見CreateWindow。

    hMenu:參見CreateWindow。

    hlnstance:參見CreateWindow。

    lpParam:參見CreateWindow。

    返回值:參見CreateWindow。

    備註:參見CreateWindow。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:1.0以上版本;頭文件:winuser.h;庫文件:USer32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
194 DPtoLP 將設備座標轉換位邏輯座標  Yes Yes Yes
195 DdeAbandonTransaction 取消異步交互  No Yes Yes
196 DdeAccessData 訪問DDE數據對象  No Yes Yes
197 DdeAddData 向DDE數據對象中加入數據  No Yes Yes
198 DdeClientTransaction 開始DDE數據事務  No Yes Yes
199 DdeCmpStringHandles 比較兩個DDE字符串句柄  No Yes Yes
200 DdeConnect 建立與服務器的對話  No Yes Yes
201 DdeConnectList 建立多個DDE對話  No Yes Yes
202 DdeCreateDataHandle 建立DDE數據句柄  No Yes Yes
203 DdeCreateStringHandle 建立DDE字符串句柄  No Yes Yes
204 DdeDisconnect 終止DDE對話  No Yes Yes
205 DdeDisconnectList 取消DDE對話表列  No Yes Yes
206 DdeEnableCallback 使能或取消一個或多個DDE對話  No Yes Yes
207 DdeFreeDataHandle 釋放DDE數據對象  No Yes Yes
208 DdeFreeStringHandle 釋放DDE字符串句柄  No Yes Yes
209 DdeGetData 將數據從DDE數據對象中複製到緩衝區  No Yes Yes
210 DdeGetLastError 返回由DDEML函數設置的出錯代碼  No Yes Yes
211 DdeImpersonateClient DDE服務器模擬客戶機  No Yes Yes
212 DdeInitialize 用DDEML登記應用程序  No Yes Yes
213 DdeKeepStringHandle 爲字符串句柄增加可用記錄  No Yes Yes
214 DdeNameService 登記取消服務器名稱  No Yes Yes
215 DdePostAdvise 提示服務器向客戶機發送建議數據  No Yes Yes
216 DdeQueryConvInfo 返回關於DDE對話的信息  No Yes Yes
217 DdeQueryNextServer 在對話表列中獲得下一個句柄  No Yes Yes
218 DdeQueryString 將字符串句柄文本複製到緩衝區  No Yes Yes
219 DdeReconnect 重建DDE對話  No Yes Yes
220 DdeSetQualityOfService 指明服務的DDE質量  No Yes Yes
221 DdeSetUserHandle 將用戶定義句柄與事務建立關聯  No Yes Yes
222 DdeUnaccessData 釋放DDE數據對象  No Yes Yes
223 DdeUninitialize 釋放應用程序的DDEML資源  No Yes Yes
224 DebugActiveProcess 連接調試進程  No Yes Yes
225 DebugBreak 建立斷點  Yes Yes Yes
226 DefDlgProc 提供缺省窗口消息進程 "    函數功能:該函數爲屬於應用程序定義的對話框類的窗口過程提供缺省的消息處理。

    函數原型:LRESULT DefDlgProc(HWND hDlg,UINT Msg,WPARAM wParam, LPARAM Param);

    參數:

    hDlg:指定對話框。

    Msg:指定消息數目。

    wParam:指定消息中特定的其他信息。

    Iparam:指定消息中特定的其他信息。

    返回值:返回值指定消息處理的結果且依賴於發送的消息。

    備註:DefDlgProc函數爲對話樞預定義類的窗口應用程序。此應用程序通過把消息傳送到對框應用程序和爲對話框應用程序返回的任何一個FALSE消息,提供缺省處理而爲對話框提供內部的處理程序。爲自定義對話框創建自定義應用程序的應用程序,常用DefDlgProc而不是DefWindowProc函數來執行缺省的消息處理。應用程序通過用合適的信息來填充一個WNCLASS結構和通過用RegisterClass函數登記的類創建自定義對話框類。一些應用程序用GetClasslnfo函數指定與定義對話框的名來填充此機構。在這種情況下,應用程序在登記之前至少改變IpszClassNamede數目。在所有的情況下,對於自定義對話框的WNDCLASS的cbWndExtra成員一定至少設置爲DLGWINDOWEXTRA。DefDlgProc函數一定不要通過一個對話框應用程序來調用,這樣做會導致循環執行。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" Yes Yes Yes
227 DefDriverProc 定義缺省消息處理器  Yes Yes Yes
228 DefFrameProc 缺省MDI框架窗口消息進程  Yes Yes Yes
229 DefMDIChildProc 缺省MDI子窗口消息進程  Yes Yes Yes
230 DefWindowProc 調用缺省窗口過程  Yes Yes Yes
231 DeferWindowPos 更新窗口位置結構 "    函數功能:該函數爲指定的窗口更新指定的多窗口位置結構,然後函數返回該更新結構的句柄。EndDeferWindowPos函數使用該結構內的信息同時改變一些窗口的位置和大小。該結構由BeginDeferWindowPos函數創建。

    函數原型:HWND DeferWindowPos(HDWP hWinPoslnfo,HWND hWnd,HWND hWndlnsertAffer, int x,int y, int cx, int Cy,UNIT uFags);

    參數:

    hWinPoslnfo:多窗口定位結構的句柄,該結構包含着一個或多個窗口的尺寸和定位信息,可以由函數BeginDeterWindowPos返回該結構或是由最近一次調用的DeferWindowPos函數返回。

    hWnd:窗口的句柄,該窗口的更新信息存儲在結構中。

    hWndlnsertAfter:被定位窗口的Z序的前一窗口的句柄。這個參數必須爲窗口句柄或下列值之一:HWND_BOTTOM:將窗口定位在Z序的底部。如果hWnd參數指定的是一個最頂層窗口,則該窗口將失去頂級位置而被排在所有其他窗口的底部。

    HWND_NOTOPMOST:將窗口放置在所有頂層窗口的頂部(即在所有頂層窗口的後面)。如果窗口已經是一個非頂層窗口則此參數不起作用。

    HWND_TOP:將窗口放置在Z序的頂部。

    HWND_TOPMOST:將窗口放置在所有非頂層窗口的頂部、即使未被激活,窗口仍保持頂級位置。如果在uFlagS參數中指定了SWP_NOZORDER標誌則本參數將被忽略。

    x:指定窗口左上角的X座標。

    y:指定窗口左上角的y座標。

    cx:以像素定義窗口的新的寬度。

    cy:以像素定義窗口的新的寬度。

    uelage:指定下列影響窗口的大小和位置的值的組合:

    SWP_DRAWFRAME:在窗口周圍畫一個邊框(該邊框定義在窗口類的描述中)。

    SWP_FRAMECHANGED:給窗口發送一個WM_NCCALCSIZE消息,即使窗口的尺寸不作改變也要發送。如果未指定這個標誌,則只有窗口大小 改變時才發送WM_NCCALCSIZE消息。

    SWP_HIDEWINDOW:隱藏窗口。

    SWP_NOACTIVATE:不激活窗口。如果未指定這個標誌,則窗口被激活並且根據hWndlnsertAfter參數的設置移到或是頂部窗口的頂部或是非頂部窗口的頂部。

    SWP_NOMOVE;維持當前位置(忽略X和y參數)。

    SWP_NOOWNERZORDER:不改變所有者窗口在Z序中的位置。

    SWP_NOREDRAM:不作窗口更新。如果設定了這個標誌,則不發生任何窗口刷新的動作。包括不對客戶區,非客戶區(包括標題條和滾動條),以及由於窗口移動露出的部分父窗口進行刷新。當設定了這個標誌時,應用程序一定要明確指出將原窗口清除並且重畫窗口的任何部分以及父窗口需要重畫的部分。

    SWP_NOREPOSITION:同 SWP_NOOWNERZORDER標誌。

    SWP_NOSENDCHANGING:防止窗口接受到WM_WINDOWPOSCHANGING消息。

    SWP_NOSIZE;保持當前大小。(即忽略CX,Xy參數)。

    SWP_NOZORDER:保持當前Z序(忽略hWndlnsertAfter參數)。

    SWP_SHOWWINDOW:顯示窗口。

    返回值:返回值指明瞭被更新的多窗口定位結構。函數返回的句柄可能與傳遞給函數的句柄不同。這個函數返回的新句柄應在下一次調用時傳遞給DeferWindowPos函數和EndDeferWindowPos函數。如果調用函數時系統資源不足,則函數返回NULL。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:如果調用函數DeferWindowPos失敗,應用程序應放棄窗口定位動作,並且不再調用EndDeferWindowPos 函數。如果未指定SWP_NOZORDER,系統將由hWnd參數指定的窗口定位於在hWndlnsertAfer參數指定的窗口之後的位置。如果hWndlnsertAfsr參數爲空或爲HWND_TOP,則系統將窗口放置在Z序頂端。如果hWndlnsertAfer設爲HWND_BOTTOM則系統將窗口放置在Z序的底部。

    所有子窗口的座標都是相對於父窗口客戶區的左上角的座標。

    一個窗口可以通過兩種方式設爲頂部窗口:或是設hWndlnsertAfter爲HWND_TOPMOST並確保未設置SWP_NOZORDER標誌;或是設置窗口在Z序中的位置使其在所有已存在的頂端窗口的頂部。當一個非頂端窗口被設爲頂端窗口時,則屬於它的窗口均被置爲頂端窗口,而其所有者則不變。

    如果SWP_NOACTIVATE或SWP_NOZORDER均未設置(即當應用程序要求在窗口被激活的同時改變其z序時),hwdfnsertPos參數只在下列情況中使用:

    在hWndlnsertAfter參數中既未設定HWND_TOPMOST也未設定HWND_NoTTOPMOST標誌; 由hWnd指定的窗口不是激活窗口;

    應用程序在將窗口設爲活動窗口時應將窗口設置到Z序的頂部。應用程序可以不受任何限制地改變被激活窗口在Z序中的位置,或在激活一個窗口之後將該窗口移到頂端窗口或非頂端窗口的頂部。

    如果一個頂端窗口被重定位到Z序的底部(HWND_BOTTOM)或任何非頂端窗口後面時將不再是頂端窗口。

    一個非頂端窗口可能擁有一個頂端窗口,反之則不成立。從屬的任何窗口(例如一個對話框)都設置爲頂層窗口以確保所有的從屬窗口都在其所有者之上。

    速查: Windows NT:3.1以上版本;Windows:95以上版本; Windows CE:不支持;頭文件: winuser.h;庫文件:user32.lib。

" Yes Yes Yes
232 DefineDosDevice 定義、重定義或刪除DOS的設備名  No Yes Yes
233 DeleteAce 從已存在的ACL中刪除ACE  No Yes Yes
234 DeleteAtom 刪除一個原子  Yes Yes Yes
235 DeleteColorSpace 刪除指定色彩空間  No Yes Yes
236 DeleteCriticalSection 刪除臨界部分  No Yes Yes
237 DeleteDC 刪除設備描述表  Yes Yes Yes
238 DeleteEnhMetaFile 取消增強圖元文件句柄  No Yes Yes
239 DeleteFile 刪除文件  No Yes Yes
240 DeleteForm 刪除打印機窗體層差  No Yes Yes
241 DeleteMenu 刪除菜單項 "    函數功能:該函數從指定菜單裏刪除一個菜單項。如果此菜單項打開了一個菜單或子菜單,則此函數銷燬該菜單或子菜單的句柄,並釋放該菜單或子菜單使用的存儲器。

    函數原型:BOOL DeleteMenu(HMENU hMenu,UINT uPosition,UINT uFlags);

    參數:

    hMenu:要被的修改菜單的句柄。

    UPosition:指定將被刪除的菜單項,按參數uFlagS確定的含義。

    UFlags:確定參數UPosition加如何被解釋。此參數可取下列值之一:

    MF_BYCOMMAND:表示uPosition給出菜單項的標識符。如果MF_BYCOMMAND和MF_BYPOSITION都沒被指定,則MF_BYCOMMAND爲缺省的標誌。

    MF_BYPOSITION:表示uPosition給出菜單項基於零的相對位置。

    返回值:如果函數調用成功,返回值非零;如果函數調用失敗,返回值是零。若想獲得更多的錯誤信息, 請調用GetLastError函數。

    備註:只要一個菜單被修改,無論它是否被顯示在窗口裏,應用程序都應調用DrawMenubar。

    速查:WihdowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:Winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
242 DeleteMetaFile 取消WINDOWS圖元文件句柄  Yes Yes Yes
243 DeleteMonitor 刪除打印機監視器  No Yes Yes
244 DeleteObject 從內存刪除一個對象  Yes Yes Yes
245 DeletePort 刪除打印機端口  No Yes Yes
246 DeletePrintProcessor 刪除打印機處理器  No Yes Yes
247 DeletePrintProvidor 刪除打印機提供者  No Yes Yes
248 DeletePrinter 刪除打印機服務器上的打印機  No Yes Yes
249 DeletePrinterConnection 刪除與打印機的連接  No Yes Yes
250 DeletePrinterDriver 刪除打印機驅動程序  No Yes Yes
251 DeleteService 從SC MANAGER數據庫中刪除服務  No Yes Yes
252 DeregisterEventSource 光閉事件句柄  No Yes Yes
253 DescribePixelFormat   No Yes Yes
254 DestroyAcceleratorTable 取消加速鍵表 "    函數功能:撤消加速鍵表。該函數撤消一個加速鍵表。在關閉應用程序之前,必須使用該函數撤消所有由DestroyAcceleratorTable函數創建的加速鍵表。

    函數原型: BOOL DestroyAcceleratorTable(HACCEL hAccel);

    參數:

    hAccdel:將被撤消的加速鍵表的句柄。該句柄必須己通過調用DestroyAcceleratorTable 函數而創建。

    返回值:若函數調用成功,則返回非零值,若函數調用失敗,則返回值爲零。若要獲得更多的錯誤信息,可以調用GetLastError函數。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:Windows.h;庫文件:user32.lib。

" No Yes Yes
255 DestroyCaret 取消當前脫字號 "    函數功能:該函數清除插入標記的當前形狀,從窗口中釋放插入標記,並且刪除屏幕上的插入標記。如果插入標記的形狀是基於位圖的,那麼DestroyCaret不釋放該位圖。

    函數原型:BOOL DestroyCaret(VOLD)

    參數:無。

    返回值:如果函數執行成功,則返回值非零:如果函數失敗,則返回值爲零。若想獲取更多錯誤信息,請調用GetLastError函數。

    備註:只有當前任務中的窗口擁有插入標記時DestoryCaret才清除插入標記。如果插入標記不爲當前任務中的窗口擁有,那麼DestroyCaret不執行任何操作,並且返回FALSE。

    系統爲每個隊列提供一個插入標記。只有當窗口有鍵盤焦點或窗口是活動的時候,才創建插入記號。窗口應該在鍵盤焦點消失或窗口變爲不活動之前清除插入標記。

    速查:WindowsNT:3.1及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。
" Yes Yes Yes
256 DestroyCursor 取消CREATECURSOR建立的光標 "    函數功能:該函數銷燬一個光標並釋放它佔用的任何內存,不要使用該函數去消毀一個共享光標。

    函數原型:8OOL DestroyCUrsor(HCURSOR hCursor);

    參數:

    hCursor:要銷燬的光標的句柄,該光標必須不在使用中。

    返回值:如果成功,返回非零;如果失敗,返回值爲零,若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:DestroyCursor函數銷燬一個非共享的光標;不要用它銷燬一個共享光標。一個共享光標只要調用它的模塊仍在內存中,則該共享光標還是有效的,下面的函數可得到一個共享光標:LoadCursor;LoadCursorFromFile;LoadImage(如果使用LR-SHARED標誌);

    CopyImage(如果使用LR_COPYRETURORG標誌並且hImags參數是一個共享光標)。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
257 DestroyIcon 取消由CREATEICON建立的圖標 "    函數功能:該函數清除圖標和釋放任何被圖標占用的存儲空間。

    函數原型:BOOL DestroyIcon(HICON hIcon);

    參數:

    hIcon:是要清除留標的句柄。該圖標應處於未被使用狀態。

    返回值:如果函數成功,返回值是非零:如果函數失效,返回值是零。想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:只有利用CreateIconIndirect函數創建的圖標和光標才能調用DestroyIcon函數,不要使用該函數清除一個共享圖標。只要調入它的模塊存在於存儲器中,共享圖標就一直有效。下列函數可獲取共享圖標:LoadIcon;LoadImage(如果你使用LR_共享標記);copyImage(如果你使用LR_COPYRETURNORG而且hImage參數爲共享目標)。

    Windows CE:Destroylcon函數可以通過圖標句柄調用,這些圖標句柄來自於CreateIconIndirect,ExtractIconEx,LoadImage或LoadIcon函數。在調用DestroyIcon函數之後這些圖標句柄變爲無效。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
258 DestroyMenu 取消菜單並釋放內存 "    函數動能:該函數銷燬指定的菜單,並釋放此菜單佔用的存儲器。

    函數原型:BOOL DestroyMenu(HMENU hMenu);

    參數:

    hMenu:要銷燬的菜單的句柄。

    返回值:如果函數調用成功,返回非零值;如果函數調用失敗,返回值是零。若想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:一個應用程序在關閉之前,必須調用函數DestroyMenu來銷燬一個沒被分配給窗口的菜單。分配給窗口的菜單,當應用程序關閉時,被自動銷燬。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
259 DestroyPrivateObjectSecurity 刪除被保護的服務器對象的SD  No Yes Yes
260 DestroyWindow 取消窗口 "    函數功能:是與函數EnumChildWindows一起使用的由應用程序定義的回調函數。它接收子窗口句柄。類型 WNDENUMOROC定義了指向這個回調函數的指針。EnumChildProc是一個應用程序定義的函數名的位置標誌符。

    函數原型:BOOL CALLBACK EnumChildProc(HWND hWnd,LPARAM IParam);

    參數:

    hWnd:指向在EnumChildWindows中定義的父窗口的子窗口句柄。

    lparam:指定在EnumchildWindows中給出的應用程序定義值。

    返回值:爲繼續列舉,回調函數必須返回TRUE;爲停止列舉,回調函數必須返回FALSE。

    備註:回調函數可以執行任何要求的任務。應用程序必須通過將其地址傳送給EnumChildwindows函數來註冊這個回調函數。

    速查:Windows NT:3.1以上版本;Windows:95以上版本;Windows CE:不支持:頭文件:winuser.h;庫文件:用戶自定義。

" Yes Yes Yes
261 DeviceCapabilities 返回設備驅動程序的功能  No Yes Yes
262 DeviceIoControl 直接調用驅動程序  No Yes Yes
263 DialogBoxIndirectParam 從內存模塊中建立對話框 "    函數功能:該宏根據內存中的對話框模板資源創建一個模態的對話框。DialogBoxIndirect宏直到指定的回調函數通過調用EndDialog函數中止模態的對話框才能返回。DiaogBoxIndirect宏使用DialogBoxParam函數。函數原型:int DialogBoxIndirect(HINSTANCE hInstance,LPDLGTEMPLATE IpTemplate,HWND hWndParent,DLGPROClpDialogFunc);

    參數:

    hInstance:標識一個模塊的事例,該模塊創建對話框。

    IpTemplate:此參數指向含有一個模板的全局內存對象的指針。DialogBoxIndirect用此模板創建對話框。對話框模板由描述對話框的標題組成,跟隨着標題之後的是描述每一個控制的一個或多個數據塊,模板可以用標準格式或擴展格式。

    在標準模板中,標題是由DLGTEMPLATE結構跟隨一個變長數組組成。每個控制的數據是由DLGTEMPLATE結構跟隨一個變長數組組成。

    在擴展模板中,標題用DLGTEMPLATEEX格式,且控制定義用DLGITEMPLATEEX格式。

    HWndParent:指定擁有對話框的窗口。

    IpDialogFunc:指向對話框過程的指針。有關更詳細的關於對話框過程的信息,請參見DialogProc。

    返回值:如果函數調用成功則返回值爲在對函數EndDialog的調用中的nResult參數,該EndDialog函數用於中止對話框。如果函數調用失敗,則返回值爲C1。 若想獲得更多錯誤信息請調用GetLastError函數。

    備註:DialogBoxlndirect宏使用CreateWindowEx函數創建對話樞.然後把一個WM_INITDIALOG消息傳遞到對話框過程。如果模板指定DS_SETFONT類型DialogBoxlndirect函數將一個WM_SETFONT消息傳遞到對話框。(不管模板是否指定WS_VISIBLE類型),函數顯示對話框使屬主窗口失效,且爲對話框啓動它本身的消息循環來檢索和傳遞消息。

    當對話框應用程序調用EndDialog 函數時,DialogBoxlndirect函數清除對話框,中止消息循環,使主窗口生效(如果以前有效)且返回EndDialog函數調用中的nResult參數。

    在標準對話框模板中,DLGTEMPLATE結構和每一個DLGITEMTEMPLATE結構必須按DWORD邊界對齊,遵循DLGEMTEPLATE結構而創建的數據數組也一定按DWORD邊界對齊。模板中其他所有變長數組一定要按DWORD邊界進行調整。

    在擴展對話框模板上DLGTEMPLATEEX結構和每一個DLGITEMTEMPLATEEX結構必須按DWORD邊界對齊,遵循DLGEMTEPLATE結構而創建的數據數組也一定按DWORD邊界對齊。模板中其他所有變長數組一定要按DWORD邊界進行調整。

    所有對話框模板的字符串,例如對話框和按鈕的標題,一定是Unicode字符串。使用

    MultiByteToWidechar函數產生這些Unicode字符串可以創建在Windows和Windows NT兩種系統上工作的代碼。

    Windows 95和以後版本:系統可支持每個對話框模板最多爲255個控制。爲把多於255個控制放入對話框。可以在WM_INITDLAIOG消息處理器中創建控制,而不是把它們放入模板中。

    Windows CE:IpTemplateName參數指向的對話框模板中DLGTEMPLATE結構並不支持所有的類型。

    速查:Windows NT:3.1 及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:Winuser.h;庫文件:user32.lib Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" No Yes Yes
264 DisableThreadLibraryCalls   No Yes Yes
265 DisconnectNamedPipe 切斷命名管道的服務器終端  No Yes Yes
266 DispatchMessage 向窗口發送消息 "    函數功能:該函數調度一個消息給窗口程序。通常調度從GetMessage取得的消息。

    函數原型:LONG DispatchMessage(CONST MSG *lpmsg);

    參數:

    lpmsg:指向含有消息的MSG結構的指針。

    返回值:返回值是窗口程序返回的值。儘管返回值的含義依賴於被調度的消息,但返回值通常被忽略。

    備註:MSG結構必須包含有效的消息值。如果參數lpmsg指向一個WM_TIMER消息,並且WM_TIMER消息的參數IParam不爲NULL,則調用IPa1ram指向的函數,而不是調用窗口程序。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:winuser.h;輸入庫:user32.lib;Unicode:在Windows NT環境下以Unicode和ANSI方式實現。

" Yes Yes Yes
267 DlgDirList 填充目錄列表框 "    函數功能:該函數用與指定的文件名匹配的所有文件的名字填充列表框。

    函數原型:int DlgDirList(HWND hDlg,LPTSTR lpPathSpec,int nlDListBox,int nlDStaticPath,UINT uFileType);

    參數:

    hDlg:包含列表框的對話框句柄。

    loPathSpec:指向包含路徑名或文件名的以NULL結尾的字符串指針。DIgDirList修改此串,該串必須有足夠的長度來保存修改的內容。關於此參數的更詳盡的信息,請看備註部分。

    nlDListBox:定義一個列表框的標示。如果該參數爲0,DlgDirList函數認爲沒有列表框存在,也不試圖填充。

    nlDStaticPath:定義用於顯示當前驅動器和目錄的靜態控制的標識符。若此參數爲0,DlgDirList認爲不存在這樣的控制。

    UFileType:定義將要顯示的文件名字的屬性。該參數必須是一個或多個如下的值:

    DDL_ARCHIyE:包含文檔文件。DDL_DIRECTORY:包含於目錄。於目錄名包含在方括號中。

    DDL_DRIVES:包含驅動器。驅動器以[一X」的形式列出,其中X是驅動器符。

    DDL_EXCLUSIVE:僅包含指定屬性的文件。缺省情況下,可讀寫的文件將被列出,儘管並未指定DDL_READWRITE值。DDL_HIDDEN:包含隱含文件。

    DDL_READONLy:包含只讀文件。DDL_READWRITE:包含沒有其他附加屬性的可讀寫文件。

    DDL_SYSTEM:包含系統文件。DDL_POSTMSGS:傳遞消息給應用程序的消息隊列。缺省情況下,DlgDirList直接發送消息給對話框過程。

    返回值:若函數調用成功,則返回值不爲0。若函數調用失敗,則返回值爲0。例如,lpPathSpec定義的串不是一個有效路徑時,函數將失敗。若想獲的錯誤信息,可以調用GetLastError函數。

    備註:若對於lpPathSpec參數定義了一個0長度的串,或者僅定義了一個目錄名,而沒有文件名,則串被轉換爲‘.’。

    lpPathSgec參數有如下形式:[drive:][/u]directory[/idirectory]/u][filename]

    在這個例子中,drive是一個驅動器符,directory是一個有效的驅動器名,filename是一個有效的文件名,文件名中必須包含至少一個通配符。

    若lpPathSpec包含一個驅動器或目錄名,或同時包含兩者,則在列表框被填充以前,當前的驅動器和目錄將被改變爲指定的驅動器和目錄。nlDStaticPath參數標識的靜態控制也被用新的驅動器或/和目錄名來更新。

    列表框填充以後,DlgDirList通過移去路徑和文件名的驅動器和/或目錄部分來更新lpPathSpec參數。

    DlgDirList發送LB_RESETCONTENT和LB_DIR消息給列表框。

    速查:Windows NT: 3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib;Unicode:在Windows NT上實現爲Unicode和ANSI兩種版本。

" Yes Yes Yes
268 DlgDirListComboBox 填充目錄列表框 "    函數功能:該函數用一個目錄列表來填充指定的組合框

    函數原型:int DlgDirListComboBox(HWND hDlg,LPTSTR lpPathSpec,int nlDComboBox,int nlDStaticPath,UINT uFiletype);

    參數:

    hDlg:包含組合框的對話框句柄。

    lpPathSpec:指向一個以NULL結束的字符串,格式爲 [driver][/][directory/][.][filename]

    如果指定的串包括一個驅動器或目錄路徑,在填充列表之前,DlgDirListComboBox函數改變當前驅動

    器和目錄。在列表被填充之後,驅動器和目錄路徑從lpPathspec參數標識的串中移出來。

    nlDComboBox:指定對話框中組合框的標識符。如果hlDComboBox爲零,則DlgDirlistComboBox函數沒有組合框存在或不試圖填充它。

    hlDStatic Path:指定靜態控制的標識符,此靜態控制用於顯示當前目錄。如果nlDStasticPath爲零,DlgDirListComboBox函數認爲沒有這樣的控制。

    uFiletype:指定被顯示的文件的屬性。它可以是下列的任意組合:

    DDL_ARDIVE:包括檔案文件。

    DDL_DIRECTORY:包括子目錄,子目錄名必須用方括號括起來([])。

    DDL_DRIVES:包括驅動器,驅動器列在格式[-X-]中,其中X爲驅動器字母名。

    DDL_EXCIUSIVE:包括僅帶指定屬性的文件,缺省時,寫保護文件被引出,即使DDL_READ WRITE沒有被指定。

    DDL_HIDBEN:包括隱含文件。DDL_READONLY:包括只讀文件。

    DDL_READWRITE:包括讀寫文件且不帶有別的屬性。DDL_SYSTEM:包括系統文件。

    DDL_POSTMSGS:把信息傳遞到應用信息隊列,缺省時,DlgDirlist函數把信息直接發送給對話框過程。

    返回值:如果函數調用成功,返回值爲非零值,否則返回值爲零。例如,如果tpPatbSpec指定的串不是一個有效路徑,函數調用失敗。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註;如果參數lpszPatbSpec指向一個零字節串或一個指定驅動器目錄,或兩者的串,但沒有文件名,那麼認爲文件名爲"".""。

    Windows NT:如果有目錄列表的話,則顯示長文件名。

    Windows 95:目錄列表顯示短文件名(爲8.3形式)。可以用SHGetFilelnfo或GetFullPathName函數來得到相應的長文件名。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib:Unicode:在Windows NT環境中實現爲Unicode和ANSI兩個版本。

" Yes Yes Yes
269 DlgDirSelectComboBoxEx 從目錄列表框中返回用戶選擇 "    函數功能:該函數從由DlgDirlistcomboBox函數填充的組合框中檢取當前選擇。選擇內容爲一個驅動器字母、文件名或目錄名。

    函數原型:BOOL DlgDirSelectComboBox(HWND hDlg,LPTSTR lpString,int nCount,int nlDComboBox);

    參數:

    hDlg:包括組合框的對話框的句柄。

    IpString:指向存放選擇路徑的緩衝區。

    nCount:指定IpString參數指向的緩衝區的字節長度。

    nlDComboBox:指定控制對話框的組合框的整型標識符。

    返回值:如果當前選擇爲一個目錄名,返回值爲非零值;否則,返回值爲零值。若想獲得更多錯誤信息,請調用GetLastError函數。

    備註:如果當前選擇指定於一個目錄名或驅動器字母,DlgDirSelectComboBoxEx函數則刪方括號(對驅動器字母則刪除破折號),以便使文件名或驅動器字母能插入新的路徑或文件名,如果沒有選擇,IpString參數指向的緩衝區的內容沒有改變。DlgDirselectComboBoxEx函數不允許從組合框返回多於一個的文件名。

    DlgDirSectectComboBoxEx把消息CB_GETCILRSEL和CB_GETLBTEXT發送到組合框。在Win32API中,可應用帶有三種組合框的DlgDirSelectComboBoxEx函數(三種組合框爲CBS_SIMPLE,CBS_DROPDOWN,與CBS_DROPDOWNLIST)。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib;Unicode:在Windows NT環境中實現爲Unicode和ANSI兩個版本。

" Yes Yes Yes
270 DlgDirSelectEx 從目錄列表框中返回用戶選擇 "    函數功能:該函數從單選列表框中檢取當前選擇,列表框已經由DlgDirlist函數填充,並且選擇內容爲一個驅動器字母,文件名或目錄名。

    函數原型:BOOL DlgDirSelectEx(HWND hDlg,LPTSTR lpString,int nCount,int nlDListBox);

    參數:

    hDlg:包括列表框的對話框句柄。

    lpString:指向存放選擇路徑的一個緩衝區。

    ncount:指定由lpString指向的緩衝區的字節長度。

    nlDListBox:指定對話框中列表框的整型標識符。

    返回值:如果當前選擇爲目錄名,返回值爲非零值。如果當前選擇不是一個目錄名,返回值爲零,若想獲得更多錯誤信息,請調用函數GetLastError函數。

    備往:DlgDirSelectEx函數把選擇複製到由IpString參數指向的緩衝區,如果當前選擇是一個目錄名或驅動器字母,DlgDirSelectEx則刪除方括號(對於驅動器字母,則刪去破折號)。這樣以便目錄名或驅動器字母能插入一個新的路徑。如果沒有選擇,lpString不改變。 DlgDirSelectEx函數把消息LB_GETCURSEL和消息LB_GETTEXT發送到列表框,函數禁止從列表框返回多於一個的文件名。列表框不應是複選的列表框,如果是的話,此函數不返回零值且Ipstring參數保持不變。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;庫文件:user32.lib;Unicode:在Windows NT環境中實現爲Unicode和ANSI兩個版本。

" Yes Yes Yes
271 DoEnvironmentSubst   No Yes Yes
272 DocumentProperties 配置打印機設置  No Yes Yes
273 DosDateTimeToFileTime 將MS-DOS日期時間轉換爲64位格式  No Yes Yes
274 DragAcceptFiles 登記窗口是否接受託動文件的內容  No Yes Yes
275 DragDetect 捕獲並跟蹤鼠標的移動直到用戶鬆開左鍵、按下Esc "    函數功能:該函數捕獲並跟蹤鼠標的移動直到用戶鬆開左鍵、按下Esc。鍵或者將鼠標移動到圍繞指定點的“拖動矩形”之外。拖動矩形的寬和高由函數GetSystemMetrics返回的SM_CXDRAG或SM_CYDRAG確定。

    函數原型:BOOL DragDetect(HWND hwnd,POINT pt);

    參數:

    hwnd:接受鼠標輸入的窗口的句柄。

    pt:鼠標在屏幕座標下的初始位置,此函數根據這個點來確定拖動矩形的座標。

    返回值:如果用戶在按着鼠標左鍵時將鼠標移出了拖動矩形之外,則返回非零值;如果用戶按着鼠標左鍵在拖動內移動鼠標,則返回值是零。

    備註:拖動矩形的系統度量是可構造的,允許更大或更小的拖動矩形。

    速查:Windows NT: 4.0及以上版本;Windows:95及以上版本;Windows CE:不支持;頭文件:winuser.h;輸入庫:user32.lib。

" No Yes Yes
276 DragFinish 釋放分配用於託動文件的內容  No Yes Yes
277 DragObject   No Yes Yes
278 DragQueryFile 返回託動的文件名  No Yes Yes
279 DragQueryPoint 返回鼠標位置  No Yes Yes
280 DrawAnimatedRects   No Yes Yes
281 DrawCaption   No Yes Yes
282 DrawEdge   No Yes Yes
283 DrawEscape 實現非GDI可畫圖設備方法  No Yes Yes
284 DrawFocusRect 用焦點風格畫矩形  Yes Yes Yes
285 DrawFrameControl   No Yes Yes
286 DrawIcon 在指定設備描述表中畫一個圖標 "    函數功能:該函數在限定的設備上下文窗口的客戶區域繪製圖標。

    函數原型:BOOL DrawIcon(HDC hDC,int X,nit Y HICON hIcon );

    參數:

    hDC:窗口設備上下文的句柄。

    X:指定圖標左上角的邏輯X座標。

    Y:指定圖標左上角的邏輯y座標。

    hIcon:被繪製圖標的句柄。圖標資源必須已經通過LoadIcon或LoadImage函數被裝載過。

    返回值:如果函數成功,返回值是非零;如果函數失效,返回值是零。想獲得更多的錯誤信息,請調用GetLastError函數。

    備註:DrawIcon函數將目標的左上角置於由X和Y參數指定的位置,該位置受當前設備上下文的映射方式支配。

    Windows CE:DrawIcon函數被當做宏執行,定義爲DrawIconEx(hdc,x,y, hicon,0,0,0,NULL,DI_NORMAL)。

    速查:Windows NT:3.1及以上版本;Windows:95及以上版本;Windows CE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes
287 DrawIconEx 在限定的設備上下文窗口的客戶區域繪製圖標 "    函數功能:該函數在限定的設備上下文窗口的客戶區域繪製圖標,執行限定的光柵操作,並按特定要求伸長或壓縮圖標或光標。

    函數原型:B00L DrawIconEx(HDC hdc,int xLeft,int yTOp,HICON hIcon,int cxWidth,int cyWidth UINT isteplfAniCur,HBRUSH hbrFlickerFreeDraw,UINT diFlags);

    參數:

    hdc:窗口設備上下文的句柄。

    xLeft:指定目標或光標左上角的邏輯x座標。

    yTop:指定圖標或光標左上角的邏輯y座標。

    hIcon:被繪製圖標的句柄,該參數可標識一個激活的光標。圖標或光標資源必須已經通過LoadImage函數被裝載過。這參數能識別激活的光標。

    cxWidth:指定圖標或光標的邏輯寬度。如果其值爲零且diFlags參數是DI_DEFAULTSIZE;函數使用SM_CXICON或_CXCURSOR系統公制值設置寬度;如果其值爲零且不使用DI_DEFAULTSIZE,函數使用資源實際寬度。

    cyWidth:指定圖標或光標的邏輯高度。如果其值爲零且diFlags參數是DI_DEFAULTSIZE,函數使用SM_CYICON或SM_CYCURSOR系統公制值設置高度;如果其值爲零且不使用DI_DEFAULTSIZE,函數使用資源實際高isteplfAniCur:如果hlcon標識一個動態光標,參數指定要繪製的幀索引;如果hlcon不標識一個動態光標,該參數被忽略。

    hbrFlickerFreeDraw:系統用做閃爍·自由繪圖的刷子句柄。如果hbrFlickerFreeDraw是有效的刷子句柄,系統利用背景顏色刷於創建一個反屏位圖將圖標或光標繪製到位圖中,並將位圖複製到由hdc。標識的設備上下文中。

    diFlags:指定繪圖的標記,參數可爲下列的值:

    DI_COMPAT:系統採用缺省圖像而不是用戶定義的圖像繪製圖標和光標。

    DI_DEFAULTSIZE:如果CXWidth和CyWidth參數被設爲零,採用系統指定的圖標和光標的的公制寬度和高 度繪製圖標和光標;如果標記未被指定且cxWidth和cyWith參數設爲零標,函數使用資源實際大小。

    DI_IMAGE:用圖像繪製目標或光標。DI_MASK:用屏蔽繪圖圖標或光標。

    DL_NORMAL:DI_IMAGE 與DI_MASKR的組合。

    返回值:如果函數成功,返回值是非零;如果函數失效返回值是零。想獲得更多的錯誤信息請調用GetLastError函數。

    備註:DrawIconEx。函數將圖標的左上角置於由xLeft和yTop參數指定的位置,該位置受當前設備上下文的映射方式支配。

    Windows CE:下列的參數設置必須被使用:

    djFlags必須是DI_NORMAL,DI_IMAGE,或DI_MASK(不支持DI_COMPAT and DI_DEFAULTSIZE)。

    cxWidth和cyHeight必須是零或圖標的原始尺寸。hbrFlickerFreeDraw必須是NULL。

    iSteplfAniCur必須是零,動態圖標不被支援。Windows CE不支援:伸長的和壓縮:也就是說該圖標分辨率對給定的HICON是固定的,不支持國標大小的再調整。映射方式:用DrawIconEx繪製光標時,hIcon參數不能標識動態光標。

    速查:WindowsNT:31及以上版本;Windows:95及以上版本;WindowsCE:1.0及以上版本;頭文件:winuser.h;庫文件:user32.lib。

" No Yes Yes
288 DrawMenuBar 重畫指定菜單的菜單條 "    函數功能:該函數重畫指定菜單的菜單條。如果系統創建窗口以後菜單條被修改,則必須調用此函數來畫修改了的菜單條。

    函數原型:BOOL DrawMenuBar(HWND hWnd);

    參數:

    hWnd:其菜單條需要被重畫的窗口的句柄。

    返回值:如果函數調用成功,返回非零值:如果函數調用失敗,返回值是零。若想獲得更多的錯誤信息,請調用GetLastError函數。

    速查:Windows NT:及以上版本;Windows:95及以上版本;Windows:2.0及以上版本;頭文件:winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
289 DrawState   No Yes Yes
290 DrawText 在矩形中畫出已格式化文本  Yes Yes Yes
291 DrawTextEx   No Yes Yes
292 DrvGetModuleHandle 獲得可安裝驅動程序的例子句柄  No Yes Yes
293 DuplicateHandle 複製對象句柄  No Yes Yes
294 DuplicateIcon   No Yes Yes
295 DuplicateToken 複製訪問令牌  No Yes Yes
296 Ellipse 畫橢圓  Yes Yes Yes
297 EmptyClipboard 清空剪貼板並釋放數據句柄  Yes Yes Yes
298 EnableMenuItem 使能、取消或使菜單項不可激活 "    函數功能:該函數使指定的菜單項有效、無效或變灰。

    函數原型:BOOL EnableMenuItem(HMENU hMenu,UINT uIDEnablttem,UINT uEnable);

    參數

    hMenu:菜單句柄。

    uIDEnableItem:指定將使其有效、無效或變灰的菜單項,按參數uEnable確定的含義。此參數可指定菜單條、菜單或子菜單裏的菜單項。

    uEnable:指定控制參數uIDEnableItem如何解釋的標誌,指示菜單項有效、無效或者變灰。此參數必須是MF_BYCOMMAND或MF_BYPOSITION,MF_ENABLED和MF_DISABLE或MF_GRAYED的組合。

    MF_BYCOMMAND:表明參數uIDEnableItem給出了菜單項的標識符。如果MF_BYCOMMAND和MF_POSITION都沒被指定,則MF_BYCOMMAND爲缺省標誌。

    MF_BYPOSITION:表明參數uIDEnableItem給出了菜單項的以零爲基準的相對位置。

    MF_DISABLED:表明菜單項無效,但沒變灰,因此不能被選擇。

    MF_ENABLED:表明菜單項有效,並從變灰的狀態恢復,因此可被選擇。

    MF_GRAYED:表明菜單項無效並且變灰,因此不能被選擇。

    返回值:返回值指定菜單項的前一個狀態(MF_DISABLED,MF_ENABLED或MF_GRAYED)。如果此菜單項不存在,則返回值是OXFFFFFFFF。

    備註:一個應用程序必須用MF_BYPOSITION來指定正確的菜單句柄。如果菜單條的菜單句柄被指定,頂層菜單項(菜單條上的菜單項)將受到影響。若要根據位置來設置下拉菜單中的菜單項或子菜單的狀態,應用程序指定下拉菜單或子菜單的句柄。當應用程序指定MF_BYCOMMAND標誌時,系統在由指定菜單句柄標識的菜單裏選取那些打開了子菜單的菜單項。因此除非要複製菜單項,指定菜單條的句柄就足夠了。函數InsertMenu,InsertMenuItem,LoadMenuIndirect,ModifyMenu和SetMenuItemInfo也可設置菜單項的狀態(有效、無效或變灰)。WindowsCE:WindowsCE不支持參數uEnable取MF_DISABLED標誌。如果沒有變灰,菜單項不能無效。要使菜單項無效,用MF_RAYED標誌。

    速查:WindowsNT:3.1及以上版本;Windows:95的及以上版本;WindowsCE:1.0及以上版本;頭文件:winuser.h;輸入庫:user32.lib。

" Yes Yes Yes
299 EnableScrollBar 使能、取消滾動條  No Yes Yes
300 EnableWindow 設備窗口使能狀態 "    函數功能:該函數允許或禁止指定的窗口或控制接受鼠標輸入或鍵盤輸入。當輸入被禁止時窗口不能接收鼠標單擊和按鍵等類輸入;當輸入允許時,窗口接受所有的輸入。

    函數原型:BOOL EnableWindow(HWND hWnd,BOOL bEndble):

    參數:

    hWnd:允許或禁止的窗口句柄。

    bEnable:指定是允許還是禁止窗口。如果這個參數爲TRUE,窗口允許;如果參數爲FALSE,則窗口被禁止。

    返回值:如果窗口此前曾被禁止,則返回值爲非零;如果窗口此前未被禁止,則返回值爲零。若想獲得更多錯誤信息,請調用 GetLastError函數。

    備註:如果窗口的使能狀態正在改變,則在EnableWindow函數返回前發送一個WM_ENABLE消息。如果窗口己經被禁止,則它的所有子窗口都被禁止,即使未向它們發送WM_ENABLE消息。

    在一個窗口被激活前必須是使能的。例如,如果應用程序正在顯示一個無模式對話框並且禁止了它的主窗口,則應用程序在銷燬對話框之前一定要使能該主窗口。否則,將有另外一個窗口接受鍵盤焦點並且被激活。如果一個子窗口被禁止,則在系統確定由哪一個窗口接受鼠標消息時該子窗口將被忽略。

    當窗口被創建時缺省爲使能狀態。要創建一個初始被禁止的窗口,應用程序可以在CreateWindowh 函數和CreateWindowhEx中指定WS_DISABLED風格。在窗口被創建後,應用程序可以使用EnaoleWindow函數來使能和禁止窗口。

    應用程序可以使用這個函數來使能或禁止在對話框內的控制。一個被禁止的控制不能接受鍵盤焦點用戶也不能進入該控制。

    速查:Windows NT:3.1以上版本;Windows:95以上版本; Windows CE:1.0以上版本;頭文件:winuser.h;庫文件:user32.lib。

" Yes Yes Yes

發佈了29 篇原創文章 · 獲贊 4 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章