>PROCEDURE parseprocessinfostruc >LPARAMETER cProcessInfoStructure >WITH This > .inProcessHandle = .ExtractDWORD(cProcessInfoStructure) > .inThreadHandle = .ExtractDWORD(SUBST(cProcessInfoStructure,5)) >ENDWITH > >ENDPROC > > >PROCEDURE extractdword >LPARAMETER cStringToExtractFrom >IF TYPE('cStringToExtractFrom')='C' AND LEN(cStringToExtractFrom) >= 4 > RETURN (((ASC(SUBST(cStringToExtractFrom,4,1))*256) + ; > ASC(SUBST(cStringToExtractFrom,3,1)))*256 + ; > ASC(SUBST(cStringToExtractFrom,2,1)))*256 + ; > ASC(LEFT(cStringToExtractFrom,1)) >ELSE > this.icErrorMessage = 'Invalid DWORD string passed for conversion' > RETURN NULL >ENDIF >ENDPROC >>