Thema: Delphi Benutzer Speicher

Einzelnen Beitrag anzeigen

MichaelGapp

Registriert seit: 15. Okt 2007
5 Beiträge
 
#6

Re: Benutzer Speicher

  Alt 18. Okt 2007, 12:43
Hallo Leute,

hier mal einwenig Code



Die Function die den RAM eines Prozesses ausliest.

Delphi-Quellcode:
procedure TMainForm.CheckRam;
var
  _MemInfo: TProcessMemoryCounters;
  _Process: HWND;
  _ram: Cardinal;
begin
  FRamAlarm := FALSE;
  Label17.Caption := '0 MB';

  if FProcId = 0 then
    Exit;

  _Process := OpenProcess(PROCESS_QUERY_INFORMATION, False, FProcId);

  if _Process <> 0 then
    try
      if GetProcessMemoryInfo(_Process, @_MemInfo, SizeOf(_MemInfo)) then
        begin
          _ram:= _MemInfo.WorkingSetSize;

          Label17.Caption:= IntToStr(Trunc(_ram / 1024 / 1024)) + ' MB';

          FRamAlarm:= seRAM.Value < Trunc(_ram / 1024 / 1024);

          if FRamAlarm then
            AddLog(SX_RAM, 'RAM is used more than = ' + IntToStr(seRAM.Value) + ', used = '  + IntToStr(Trunc(_ram / 1024 /1024)));
        end;
    finally
      CloseHandle(_Process);
    end;
end;
Das funktioniert auch solang der Prozess (Anwendung) unter dem gleichen Benutzer läuft.

Was muss ich tun um an den Prozess eines anderen Benutzers zu kommen?

Gruss
MG
  Mit Zitat antworten Zitat