资源 分配函数 清除函数 需要手动清除?==================================================================================================
Accelerators
LoadAccelerators N/A No
Atoms
GlobalAddAtom GlobalFreeAtom Yes
Bitmaps
CreateBitmap DeleteObject Yes * CreateBitmapIndirect DeleteObject Yes * CreateCompatibleBitmap DeleteObject Yes * CreateDIBitmap DeleteObject Yes * CreateDiscardableBitmap DeleteObject Yes * LoadBitmap DeleteObject Yes
Brushes
CreateBrushIndirect DeleteObject Yes CreateDIBPatternBrush DeleteObject Yes CreateHatchBrush DeleteObject Yes CreatePatternBrush DeleteObject Yes CreateSolidBrush DeleteObject Yes
Carets
CreateCaret DestroyCaret No #
Clipboard
OpenClipboard CloseClipboard Yes
Comms Ports
OpenComm CloseComm Yes
Cursor
CreateCursor DestroyCursor Yes LoadCursor N/A No
DC CreateDC DeleteDC Yes
CreateCompatibleDC DeleteDC Yes
GetDC ReleaseDC Yes
GetWindowDC ReleaseDC Yes
BeginPaint EndPaint Yes
DialogBox
CreateDialog DestroyWindow No CreateDialogIndirect DestroyWindow No CreateDialogIndirectParam DestroyWindow No CreateDialogParam DestroyWindow No
File
OpenFile _lclose No
Fonts
CreateFont DeleteObject Yes CreateFontIndirect DeleteObject Yes AddFontResource RemoveFontResource Yes
GDIStockObj
GetStockObject N/A No
Hook
SetWindowsHook UnhookWindowsHook Yes
IC
CreateIC DeleteDC Yes
Icon
CreateIcon DestroyIcon Yes LoadIcon N/A No
Library
LoadLibrary FreeLibrary Yes
Memory
AllocDStoCSAlias FreeSelector Yes AllocSelector FreeSelector Yes GlobalAlloc GlobalFree No GlobalDOSAlloc GlobalDOSFr No GlobalFix GlobalUnfix No GlobalLock GlobalUnlock No GlobalPageLock GlobalPageUnlock No GlobalRealloc GlobalFree No GlobalWire GlobalUnwire No LocalAlloc LocalFree No LocalLock LocalUnlock No LocalRealloc LocalFree No
Menu
CreateMenu DestroyMenu No % CreatePopupMenu DestroyMenu No % LoadMenu DestroyMenu No % LoadMenuIndirect DestroyMenu No % GetSystemMenu N/A No
MetaFile
CreateMetaFile DeleteMetaFile Yes
Palette
CreatePalette DeleteObject Yes
Pen
CreatePen DeleteObject YesCreatePenIndirect DeleteObject Yes
Regions
CreateEllipticRgn DeleteObject Yes CreateEllipticRgnIndirect DeleteObject Yes CreatePolygonRgn DeleteObject Yes CreatePolyPolygonRgn DeleteObject Yes CreateRectRgn DeleteObject Yes CreateRectRgnIndirect DeleteObject Yes CreateRoundRectRgn DeleteObject Yes
Resource
AllocResource FreeResource No FindResource N/A No LoadResource FreeResource No LockResource UnlockResource No
Sound
OpenSound CloseSound Yes
String
LoadString N/A No
Thunk
MakeProcInstance FreeProcInstance No
Timer
SetTimer KillTimer No
Window
CreateWindow DestroyWindow No CreateWindowEx DestroyWindow No
* 位图资源在释放的时候必须从选中它的DC中脱离。
% 当菜单失去焦点和窗口不再关联或者应用程序结束的时候占用资源必须被释放。
@ DC被释放前必须和它关联(选中)的位图取消联系 # 如果脱字符指定了位图,位图必须被释放
& 对DeleteObject的调用不会销毁常规的StockObject(系统内定资源)