EnableExplicit Structure PROCESS_MEMORY_COUNTERS cb.l PageFaultCount.l PeakWorkingSetSize.i WorkingSetSize.i QuotaPeakPagedPoolUsage.i QuotaPagedPoolUsage.i QuotaPeakNonPagedPoolUsage.i QuotaNonPagedPoolUsage.i PagefileUsage.i PeakPagefileUsage.i EndStructure Prototype.i EmptyWorkingSet( hProcess.i) Prototype.i GetProcessMemoryInfo( hProcess.i, *ppsmemCounters.PROCESS_MEMORY_COUNTERS, cb.i) Procedure.i GetProcessMemoryUsage(pid) Protected Result.i Protected PMC.PROCESS_MEMORY_COUNTERS Protected GetProcessMemoryInfo.GetProcessMemoryInfo Protected lib_psapi = OpenLibrary(#PB_Any, "psapi.dll") If lib_psapi GetProcessMemoryInfo.GetProcessMemoryInfo = GetFunction(lib_psapi,"GetProcessMemoryInfo") If GetProcessMemoryInfo(GetCurrentProcess_(), @PMC, SizeOf(PROCESS_MEMORY_COUNTERS)) Result = PMC\WorkingSetSize EndIf CloseLibrary(lib_psapi) EndIf ProcedureReturn Result EndProcedure Procedure.i GetCurrentMemoryUsage() ProcedureReturn GetProcessMemoryUsage(GetCurrentProcess_()) EndProcedure MessageRequester("","Speicherverbrauch: "+Str(GetCurrentMemoryUsage())+" Bytes",0)