AfxOleLockControl

BOOL AFXAPI AfxOleLockControl( REFCLSID clsid );

BOOL AFXAPI AfxOleLockControl( LPCTSTR lpszProgID );

#include <afxwin.h>

Return Value

Nonzero if the class factory of the control was successfully locked; otherwise 0.

Parameters

clsid

The unique class ID of the control.

lpszProgID

The unique program ID of the control.

Remarks

Locks the class factory of the specified control so that dynamically created data associated with the control remains in memory. This can significantly speed up display of the controls. For example, once you create a control in a dialog box and lock the control with AfxOleLockControl, you do not need to create and kill it again every time the dialog is shown or destroyed. If the user opens and closes a dialog box repeatedly, locking your controls can significantly enhance performance. When you are ready to destroy the control, call AfxOleUnlockControl.

Example

BOOL CDlgApp::InitInstance()
{
...   
   // Starts and locks controls (Microsoft FlexGrid Control) class factory. 
   // Control will remain in memory for lifetime of
   // application or until AfxOleUnlockControl() is called.
   
   AfxOleLockControl("MSFlexGridLib.MSFlexGrid.1");
...
   return TRUE;
}

See Also   AfxOleUnlockControl