Fórum Memória usada por programas #184191
25/09/2003
0
Conversando com um colega, surgiu uma dúvida:
Existe uma forma de saber quanto de memória cada programa aberto (ou cada processo aberto) está usando; via delphi ?
Agradeço antecipadamente.
Barcelos
osbarcelos@hotmail.com
Barcelos
Curtir tópico
+ 0Posts
25/09/2003
Japa
Gostei + 0
25/09/2003
Edineidaniel
Acho que tenho alguma coisa parecida....
deem uma olhada
var
MemoryStatus: TMemoryStatus;
begin
MemoryStatus.dwLength:= sizeof(MemoryStatus);
GlobalMemoryStatus(MemoryStatus);
Label1.Caption := ´Total de memória física : ´ + IntToStr(MemoryStatus.dwTotalPhys);
end;
{typedef struct _MEMORYSTATUS}
DWORD dwLength; // sizeof(MEMORYSTATUS)
DWORD dwMemoryLoad; // percentual de memória em uso
DWORD dwTotalPhys; // bytes de memória física
DWORD dwAvailPhys; // bytes livres de memória física
DWORD dwTotalPageFile; // bytes de paginação de arquivo
DWORD dwAvailPageFile; // bytes livres de paginação de arquivo
DWORD dwTotalVirtual; // bytes em uso de espaço de endereço
DWORD dwAvailVirtual; // bytes livres}
quem sabe isso ajude..
t+
Edinei
Gostei + 0
26/09/2003
Barcelos
Não é bem isso que estamos precisando. Esta rotina retorna os totais de memória gasta, livre, etc...
Nesse caso específico, eu gostaria de retornar a quantidade [b:0ac83d570a]por processo ou por programa[/b:0ac83d570a]
Deixa eu exemplificar:
Supondo que temos o Word, a Calculadora e o Delphi abertos ao mesmo tempo. Como saber quanto cada um destes programas está usando de memória [b:0ac83d570a]individualmente?[/b:0ac83d570a]
Se tiver algo, nos avise.
Obrigado
Barcelos
osbarcelos@hotmail.com
Gostei + 0
26/09/2003
Japa
Obrigado pela dica ienide agradeço muito.... :wink:
Gostei + 0
26/09/2003
Barcelos
Acho que vale a pena tentar....
(Toda ajuda é bem vinda).
Barcelos
osbarcelos@hotmail.com
Gostei + 0
26/09/2003
Barcelos
Não vai funcionar.
:cry: :cry: :cry:
Se nós fizermos esta comparação, teremos a quantidade de memória somente no instante em que o aplicativo for aberto.
Outro problema seria calcular quanto de memória estão usando os programas que já estão abertos [b:9f1841dbc0]antes[/b:9f1841dbc0] de executarmos o nosso programa...
Sem falar de um outro problema:
Se dois programas estão abertos ao mesmo tempo e um deles está processando alguma coisa, (como o nosso cálculo é feito somente no início) como saber qual dos dois está usando a memória ????
Se tiver outra solução me avisa!!!
Barcelos
osbarcelos@hotmail.com
Gostei + 0
26/09/2003
Japa
Gostei + 0
27/09/2003
Robotizar
depois de usar o tal programma q fechar da pra tipo saber qual foi o maximo q ele usou e fazer uma média e tal.
é apenas uma idéia :D
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)