The following code illustrates how to lock a memory object.
#include "os2.h" #include "os2me.h" ULONG ulRC; /* Error return code */ PARM_LOCKM parm_lockm; /* Lock memory parameter block */ LOCKH lockh; /* Lock handle */ PVOID pMem; /* Pointer to memory object */ PSMHFN SMHEntryPoint; /* Pointer to SMH entry point */ . . . /*------------------------------------------------------ * Allocate memory and save address in pMem. *------------------------------------------------------ . . . *------------------------------------------------------ * Lock the allocated memory. *-----------------------------------------------------*/ parm_lockm.ulFunction = SMH_LOCKMEM; parm_lockm.pBuffer = pMem; parm_lockm.ulBufSize = 4096; parm_lockm.plockh = &lockh; parm_lockm.ulFlags = SSM_LOCKMEM | SSM_CONTIGLOCK; if (ulRC = SMHEntryPoint (&parm_lockm)) return(ulRC); /* Error! */