Hi Harvey,
in my applications (VO 2.8 SP4b) it works:
pGCDump := MemAlloc(_SIZEOF(DWORD) + (dwMax*_SIZEOF(_GCENTRY)))
IF pGCDump<>NULL_PTR
pGCDump.nEntryCount:=dwMax
dwItems:=CreateGCDump(pGCDump,6)
pGCEntry:=PTR(_CAST,DWORD(_CAST,pGCDump)+_SIZEOF(DWORD))
IF dwItems > 0 .and. lWriteDump
oLog := FFileSpec{cDumpFilename}
oLog:Create( FC_NORMAL )
oLog:WriteLine("Active references to dynamic memory: "+NTrim(dwItems))
oLog:WriteLine("-------------------------------------------")
oLog:WriteLine(" ")
//ODS32("Active references to dynamic memory: "+NTrim(dwItems))
//ODS32("-------------------------------------------")
FOR X := 1 UPTO dwItems
oLog:WriteLine("Created by : " +
Iif(pGCEntry.nGCType==GC_TYPE_STACK,"Compiler","RegisterKid()"))
oLog:WriteLine("Dyn.Addr. : " +
NTrim(DWORD(_CAST,pGCEntry.pDynMem)))
oLog:WriteLine("Size : " + NTrim(pGCEntry.nSize))
oLog:WriteLine("Reference : " +
NTrim(DWORD(_CAST,pGCEntry.ppRefDynMem)))
oLog:WriteLine("Type : " + GCVarType(pGCEntry.nVarType))
//__Type2String(DWORD(_CAST,pGCEntry.nVarType)))
oLog:WriteLine("Value : " + Psz2String(@pGCEntry.abValue[1]))
oLog:WriteLine(" ")
pGCEntry:=pGCEntry + 1
NEXT
oLog:Close()
ENDIF
MemFree(pGCDump)
ENDIF
This NG may be dead because the current development of the successor
(X#) is here:
https://www.xsharp.eu , and here you will find also the
last VO development team.
Wolfgang
--