Ir para conteúdo
Fórum Script Brasil
  • 0

Memória Em Uso


Eder

Pergunta

Ola..eu peguei este codigo na net e dei uma modificada.

procedure TForm1.Timer2Timer(Sender: TObject);
const cBytesPorMb=1024*1024;
var
M: TMemoryStatus;
T : string;
begin
M.dwLength:=SizeOf(M);
GlobalMemoryStatus(M);
begin
label4.caption:=(Format('Memória em uso: %d%%', [M.dwMemoryLoad]));
label3.caption:=(format('Total de física: %f MB', [M.dwTotalPhys/cBytesPorMB]));
T := formatfloat('#,##',(diskfree(0)));
label1.caption:=('Espaço Livre do HD: '+ copy(T,1,4)+' MB');
T:= formatfloat('#,##',(DiskSize(0)));
label2.caption:=('Tamanho do HD: '+copy(T,1,4)+' MB');
end;

ele apresenta a memoria da maquina total e a usada, o tamanho do hd e o espaço livre...funciona perfeito.

Eu Gostaria de saber como posso colocar juntos com estas informações a MEMÓRIA USADA PELO PROGRAMA? tipo vou colocar um timer em um programa é quero que apareça pro usuario quanto que o programa ocupa de memória.

Tem Como?

Grato

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Guest --Jonas --

Se voce quiser dar uma incrementada no codigo

{typedef struct _MEMORYSTATUS}

dwLength; // sizeof(MEMORYSTATUS)

dwMemoryLoad; // percentual de memória em uso

dwTotalPhys; // bytes de memória física

dwAvailPhys; // bytes livres de memória física

dwTotalPageFile; // bytes de paginação de arquivo

dwAvailPageFile; // bytes livres de paginação de arquivo

dwTotalVirtual; // bytes em uso de espaço de endereço

dwAvailVirtual; // bytes livres}

Exemplo:

label5.caption:=(format('Memória de paginação de arquivo: %f MB', [M.dwTotalPageFile/cBytesPorMB]));

Link para o comentário
Compartilhar em outros sites

  • 0

Jonas....bza??

carinha este resultado que você colocou que sai no label...é a memoria do aplicativo..ou seja memoria de pagina do arquivo???

é isto que o programa ocupa de memoria??

Se for.....por favor me responda porque no aplicativo diz que tem 1481 MB e no gerenciador do winxp dia que tem 2364 K ???

valeu muito Grato

T+ :)

Link para o comentário
Compartilhar em outros sites

  • 0
Guest --Jonas --
Jonas....bza??

carinha este resultado que você colocou que sai no label...é a memoria do aplicativo..ou seja memoria de pagina do arquivo???

é isto que o programa ocupa de memoria??

Se for.....por favor me responda porque no aplicativo diz que tem 1481 MB e no gerenciador do winxp dia que tem 2364 K ???

valeu muito Grato

T+ :)

bza .... olha, no gerenciador do winxp voce ve duas colunas, uma de percentual de uso da cpu para cada programa em execução, e a outra de alocação de memoria para cada programa em uso, o valor que você encontrou no seu programa de 2364 k correposponde a quantidade de memoria alocada para o programa. o correto seria usar a informação do percentual da CPU quando o seu programa estiver sendo executado .... por exemplo: tenho um programa em delphi que chega a usar 100 % da cpu quando esta executando no entanto a memoria alocada para ele fica em 5320 K. eu já montei uma janela para mostrar para o usuario este percentual faz muito tempo, se eu achar mando um post para você ...ok ? Obs voce pode criar um label para cada uma daquelas informações sobre o uso da memoria, mas vai por mim... isto não é interessante para o usuario, mas somente para o desenvolvedor....

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...