| |
|
|
| Wieder ein tolles Codepiece von Andreas Miethe: KompilierenMarkierenSeparieren'##############################################
'# Autor : ampsoft (Andreas Miethe) #
'# Datum : 11.02.2012 #
'# Thema : Speicher #
'# XProfan-Version : 8 #
'# ab Windows XP #
'##############################################
$H Windows.ph
STRUCT PROCESS_MEMORY_COUNTERS =\
lCb&,\
lPageFaultCount&,\
lPeakWorkingSetSize&,\
lWorkingSetSize&,\
lQuotaPeakPagedPoolUsage&,\
lQuotaPagedPoolUsage&,\
lQuotaPeakNonPagedPoolUsage&,\
lQuotaNonPagedPoolUsage&,\
lPagefileUsage&,\
lPeakPagefileUsage&,\
lPrivat&
CLS
Proc GetInfo
Declare PID&,hprocess&,PMC#
PID& = External("kernel32.dll","GetCurrentProcessId")
hProcess& = ~OpenProcess(~PROCESS_QUERY_INFORMATION | ~PROCESS_VM_READ,0,PID&)
Dim PMC#,PROCESS_MEMORY_COUNTERS
External("psapi.dll","GetProcessMemoryInfo",hProcess&,PMC#,Sizeof(PMC#))
Print Format$("PageFaultCount : ###,## KB",(PMC#.lPageFaultCount&)/1024)
Print
Print Format$("Arbeitssatz (Speicher) : ###,## KB",(PMC#.lWorkingSetSize&)/1024)
Print Format$("Arbeitssatz (Speicher Peak) : ###,## KB",(PMC#.lPeakWorkingSetSize&)/1024)
Print
Print Format$("PageFile : ###,## KB",(PMC#.lPageFileUsage&)/1024)
Print Format$("PeakPagefile : ###,## KB",(PMC#.lPeakPageFileUsage&)/1024)
Print Format$("QuotaPeakPagedPoolUsage : ###,## KB",(PMC#.lQuotaPeakPagedPoolUsage&)/1024)
Print Format$("QuotaPagedPoolUsage : ###,## KB",(PMC#.lQuotaPagedPoolUsage&)/1024)
Print Format$("QuotaPeakNonPagedPoolUsage : ###,## KB",(PMC#.lQuotaPeakNonPagedPoolUsage&)/1024)
Print Format$("QuotaNonPagedPoolUsage : ###,## KB",(PMC#.lQuotaNonPagedPoolUsage&)/1024)
Print Format$("Privat : ###,## KB",(PMC#.lPrivat&)/1024)
~Closehandle(hProcess&)
Dispose PMC#
EndProc
Declare Ende&
GetInfo()
Ende& =0
SetTimer 500
WhileNot ende&
WaitInput
If %wmtimer
Locate 0,0
GetInfo()
EndIf
EndWhile
Killtimer
End
|
|
|
| |
|
|