VC资源分配释放表

 

资源

分配函数

清除函数

是否要手动清除

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

Cursor

CreateCursor

DestroyCursor

Yes

LoadCursor

N/A

No

DC

CreateDC

DeleteDC

Yes

CreateCompatibleDC

DeleteDC

Yes

GetDC

ReleaseDC

Yes

GetWindowDC

ReleaseDC

Yes

BeginPaint

EndPaint

Yes

Clipboard

OpenClipboard

CloseClipboard

Yes

Comms Ports

OpenComm

CloseComm

Yes

Timer

SetTimer

KillTimer

No

Pen

CreatePen

DeleteObject

Yes

CreatePenIndirect

DeleteObject

Yes

Icon

CreateIcon

DestroyIcon

Yes

LoadIcon

N/A

No

Fonts

CreateFont

DeleteObject

Yes

CreateFontIndirect

DeleteObject

Yes

AddFontResource

RemoveFontResource

Yes

DialogBox

CreateDialog

DestroyWindow

No

CreateDialogIndirect

DestroyWindow

No

CreateDialogIndirectParam

DestroyWindow

No

CreateDialogParam

DestroyWindow

No

File

OpenFile

_lclose

No

GDIStockObj

GetStockObject

N/A

No

Hook

SetWindowsHook

UnhookWindowsHook

Yes

IC

CreateIC

DeleteDC

Yes

Library

LoadLibrary

FreeLibrary

Yes

MetaFile

CreateMetaFile

DeleteMetaFile

Yes

Palette

CreatePalette

DeleteObject

Yes

Sound

OpenSound

CloseSound

Yes

String

LoadString

N/A

No

Thunk

MakeProcInstance

FreeProcInstance

No

Window

CreateWindow

DestroyWindow

No

CreateWindowEx

DestroyWindow

No

Resource

AllocResource

FreeResource

No

FindResource

N/A

No

LoadResource

FreeResource

No

LockResource

UnlockResource

No

Menu

CreateMenu

DestroyMenu

No

CreatePopupMenu

DestroyMenu

No

LoadMenu

DestroyMenu

No

LoadMenuIndirect

DestroyMenu

No

GetSystemMenu

N/A

No

Regions

CreateEllipticRgn

DeleteObject

Yes

CreateEllipticRgnIndirect

DeleteObject

Yes

CreatePolygonRgn

DeleteObject

Yes

CreatePolyPolygonRgn

DeleteObject

Yes

CreateRectRgn

DeleteObject

Yes

CreateRectRgnIndirect

DeleteObject

Yes

CreateRoundRectRgn

DeleteObject

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

 

1、位图资源在释放的时候必须从选中它的DC中脱离。

2、当菜单失去焦点和窗口不再关联或者应用程序结束的时候占用资源必须被释放。

3、DC被释放前必须和它关联(选中)的位图取消联系

4、如果脱字符指定了位图,位图必须被释放

5、对DeleteObject的调用不会销毁常规的StockObject(系统内定资源)

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值