none
COMO MOSTRAR O TOTAL DE MEMÓRIA RAM DO COMPUTADOR NO FORMULÁRIO? RRS feed

Respostas

  • Bom dia Guilherme...

    Eu uso esse método.

    1o adicione a referencia System.Management

    private static void DisplayTotalRam(Label labelStatus)
    {
      string Query = "SELECT MaxCapacity FROM Win32_PhysicalMemoryArray";
      ManagementObjectSearcher searcher = new ManagementObjectSearcher(Query);
      foreach (ManagementObject WniPART in searcher.Get())
      {
        UInt32 SizeinKB = Convert.ToUInt32(WniPART.Properties["MaxCapacity"].Value);
        UInt32 SizeinMB = SizeinKB / 1024;
        UInt32 SizeinGB = SizeinMB / 1024;
    
        labelStatus.Text = string.Format("Size in KB: {0}, Size in MB: {1}, Size in GB: {2}", SizeinKB, SizeinMB, SizeinGB);
      }
    }

    Espero ter lhe ajudado...

    Abraço


    Não esqueça de marcar o post como útil caso tenha te ajudado.


    sábado, 18 de maio de 2013 11:21
  • Guilherme, no parâmetro do método, deve-se colocar o seu objeto, ou seja, a sua label. O que você passou no parâmetro foi a classe Label.

    Por exemplo: se vc quer usar o método numa Label que tenha como nome labelMemoriaRAM, faça assim:

    private void STF_Principal_Load(object sender, EventArgs e)
            {
                // MOSTRAR O TAMANHO DA MEMÓRIA RAM DO COMPUTADOR
                DisplayTotalRam(labelMemoriaRAM);


    Leonardo D'Amato

    • Marcado como Resposta Giovani Cr terça-feira, 1 de outubro de 2013 18:45
    quarta-feira, 25 de setembro de 2013 14:01

Todas as Respostas

  • Bom dia Guilherme...

    Eu uso esse método.

    1o adicione a referencia System.Management

    private static void DisplayTotalRam(Label labelStatus)
    {
      string Query = "SELECT MaxCapacity FROM Win32_PhysicalMemoryArray";
      ManagementObjectSearcher searcher = new ManagementObjectSearcher(Query);
      foreach (ManagementObject WniPART in searcher.Get())
      {
        UInt32 SizeinKB = Convert.ToUInt32(WniPART.Properties["MaxCapacity"].Value);
        UInt32 SizeinMB = SizeinKB / 1024;
        UInt32 SizeinGB = SizeinMB / 1024;
    
        labelStatus.Text = string.Format("Size in KB: {0}, Size in MB: {1}, Size in GB: {2}", SizeinKB, SizeinMB, SizeinGB);
      }
    }

    Espero ter lhe ajudado...

    Abraço


    Não esqueça de marcar o post como útil caso tenha te ajudado.


    sábado, 18 de maio de 2013 11:21
  • Amigo ,muito obrigado pela resposta, porém ocorreu tudo bem até esse ponto:

    private static void DisplayTotalRam(Label lb_RAM)
            {
                string Query = "SELECT MaxCapacity FROM Win32_PhysicalMemoryArray";
                ManagementObjectSearcher searcher = new ManagementObjectSearcher(Query);
                foreach (ManagementObject WniPART in searcher.Get())
                {
                    UInt32 SizeinKB = Convert.ToUInt32(WniPART.Properties["MaxCapacity"].Value);
                    UInt32 SizeinMB = SizeinKB / 1024;
                    UInt32 SizeinGB = SizeinMB / 1024;
    
                    lb_RAM.Text =// >> DAQUI EM DIANTE DEU ERRO! :/ ("Size in KB: {0}, Size in MB: {1}, Size in GB: {2}", SizeinKB, SizeinMB, SizeinGB);
    
                }
            }

    sábado, 18 de maio de 2013 13:26
  • Ops...

    Desculpa... já corrigi o código.

    Complementando a resposta... aqui você encontra mais detalhes sobre o string.Format

    À disposição...


    Não esqueça de marcar o post como útil caso tenha te ajudado.


    sábado, 18 de maio de 2013 14:10
  • Amigo, obrigado.

    Me ajudou muito , o código entrou certinho, agora preciso mostrar ela no _load do formulário.

    Como eu faço

    estou tentando fazer assim, porém dá erro.

    private void STF_Principal_Load(object sender, EventArgs e)
            {
    
                // MOSTRAR O TAMANHO DA MEMÓRIA RAM DO COMPUTADOR
                DisplayTotalRam(Label);

    Obrigado amigo , e desculpe o encomodo!

    sábado, 18 de maio de 2013 14:51
  • Bom dia Guilherme,

    Já solucionou a sua dúvida? Caso não tenha solucionado poderia postar a mensagem de erro? Do contrário interessante publicar a sua solução para que outros amigos que por ventura tiverem a mesma possam se basear afim de evitarmos abrir vários fóruns com o mesmo tema. 

    Obrigado!

    quarta-feira, 25 de setembro de 2013 13:39
  • Guilherme, no parâmetro do método, deve-se colocar o seu objeto, ou seja, a sua label. O que você passou no parâmetro foi a classe Label.

    Por exemplo: se vc quer usar o método numa Label que tenha como nome labelMemoriaRAM, faça assim:

    private void STF_Principal_Load(object sender, EventArgs e)
            {
                // MOSTRAR O TAMANHO DA MEMÓRIA RAM DO COMPUTADOR
                DisplayTotalRam(labelMemoriaRAM);


    Leonardo D'Amato

    • Marcado como Resposta Giovani Cr terça-feira, 1 de outubro de 2013 18:45
    quarta-feira, 25 de setembro de 2013 14:01