LAYERDEV

 Busca Online:

 
Seja bem vindo(a) Visitante, você não está logado deseja logar
no portal para participar de serviços e promoções ? clique aqui.


No caso de perder a senha, acesse aqui e receba por e-mail.
Deseja entrar em contato conosco, acesse aqui e mande-nos um e-mail.

Pegando dados do computador facilmente via software

por Mauricio Junior em 1/1/2011 0


    Olá pessoal, hoje gostaria de mostrar como pegar alguns dados do computador e placa de rede (mac adress) via software usando a linguagem C#.NET. Fiz métodos simples para serem usados nos aplicativos apenas chamando e passando os parâmetros se necessário.

Requisito:
Linguagem C#.NET
Ferramenta Visual Studio .NET
Versão testado: .NET 2.0 e .NET 3.5.

    Não tenho muito o que explicar sobre os métodos, o importante é o perfeito funcionamento dos mesmos.

        /// <summary>
        /// return Volume Serial Number from hard drive
        /// </summary>
        /// <param name="strDriveLetter">[optional] Drive letter</param>
        /// <returns>[string] VolumeSerialNumber</returns>
        public static string GetVolumeSerial(string strDriveLetter)
        {
            try
            {
                if (strDriveLetter == "" || strDriveLetter == null) strDriveLetter = "C";
                ManagementObject disk = new ManagementObject("win32_logicaldisk.deviceid=\"" + strDriveLetter + ":\"");

                disk.Get();
                return disk["VolumeSerialNumber"].ToString();
            }
            catch
            {
                return "0";
            }
        }
        ........................................................................................
        Code 1.1
   
    O nome do método é GetVolumeSerial, ou seja, ele pega o valor do seu HD, pode ser o "C" ou o "D". É importante passar um valor como parâmetro para pegar um volume específico.
   
        /// <summary>
        /// Returns MAC Address from first Network Card in Computer
        /// </summary>
        /// <returns>[string] MAC Address</returns>
        public static string GetMACAddress()
        {
            try
            {
                ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration");
                ManagementObjectCollection moc = mc.GetInstances();
                string MACAddress = String.Empty;
                foreach (ManagementObject mo in moc)
                {
                    if (MACAddress == String.Empty)  // only return MAC Address from first card
                    {
                        if ((bool)mo["IPEnabled"] == true) MACAddress = mo["MacAddress"].ToString();
                    }
                    mo.Dispose();
                }
                MACAddress = MACAddress.Replace(":", " ");
                return MACAddress;
            }
            catch
            {
                return "0";
            }
        }
        ............................................................................
        Code 1.2
       
    O segundo método pega o endereço mac da placa de rede. É um número bem grande e funciona melhor do que pegar o ip da máquina que pode mudar a todo tempo.
   
        /// <summary>
        /// Return processorId from first CPU in machine
        /// </summary>
        /// <returns>[string] ProcessorId</returns>
        public static string GetCPUId()
        {
            try
            {
                string cpuInfo = String.Empty;
                string temp = String.Empty;
                ManagementClass mc = new ManagementClass("Win32_Processor");
                ManagementObjectCollection moc = mc.GetInstances();
                foreach (ManagementObject mo in moc)
                {
                    if (cpuInfo == String.Empty)
                    {// only return cpuInfo from first CPU
                        cpuInfo = mo.Properties["ProcessorId"].Value.ToString();
                    }
                }
                return cpuInfo;
            }
            catch
            {
                return "0";
            }
        }
        ............................................................................
        Code 1.3
       
    O código 1.3 é um método que pega o id da CPU do computador. Funciona muito bem por sinal. O quarto e último método que deixo registrado é o responsável em pegar o nome da máquina. Code 1.4
   
        /// <summary>
        /// Retorna o nome do computador
        /// </summary>
        /// <returns></returns>
        public static string GetNomeComputador()
        {
            try
            {
                return Environment.MachineName.ToString();
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
        ............................................................................
        Code 1.4
       
    Bom, por enquanto eu fico por aqui e qualquer dúvida pode entrar em contato.


voltar   comente  subir

Download Copy





 
Mauricio Junior Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, ECODE10.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog: blog.mauriciojunior.org, Site pessoal www.mauriciojunior.org



Comentários:


Comente (dê sua opinião):

Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

User Control Windows executando no Internet Explorer (parte 2 de 2)
Vírus - Link com Vírus
ASPNETi no seu celular
Abrindo o menu apenas com o clique
Resources e Internacionalização usando Visual Studio.NET 2005 (Parte II)
Comunicação .NET e VB 6.0 – Parte I
Criando TreeView com Visual Studio.NET 2005 (passo 1)
iGas - Sistema de Controle de Combustível
Prepare o Sql Server para o VS 2005
Dicas para programar melhor
Validator no VS 2005
Formatando String de Vários Tipos
SQLEngine Utilizando Upgrade
Visual SourceSafe - Série 3
Construindo o Windows 8
ASPNETi.COM chega aos 43 mil pageviews
Trabalhando com GridView, RowCommand e DataKeysNames
Deletando todos os arquivos
Virtual Earth – Primeiro Passo
Dll Ajax
Detectando Browser Mobile
Sort no GridView sem ir ao banco de dados novamente
Flickr para Windows 7 e Windows Phone 7
MSDN Media Center - download de vídeos
Método SHA512
Importar projetos antigos para o Visual Studio 2010
Como criptografar a string de conexão no Web.Config.
Convertendo String para Guid
Vídeo: Windows Phone com Windows Mobile 7
Cache no .NET
iSecurity Password Free
Zune
HTC x LG x Samsung com Windows Phone 7
ASP.MENU com Compatibilidade
Novo Firefox 3.0 - o chamado Minefield




eCode10 Magazine 4 Edição

Baixe a sua sem pagar nada, basta apenas ter um cadastro na comunidade aspneti.com ou ser usuário do ecode10.com.



Edições anteriores
LAYERDEV

Notícias *

Visão do Futuro - Day of Glass 2

Futuro próximo pode chegar cedo?...

Lenovo de 14 polegadas IdeaPad

Veja o novo notebook Lenovo IdeaPad...

Windows 8 Store

Channel9 publica um vídeo da Windows Store...

Sony Vaio série Z

Novo Vaio Ultrabook? ou não Ultrabook?...

Samsung quer comprar RIM

Imagine se juntar as duas companhias...

Surface 2.0 mostrado

Novo Surface é mostrado de forma incrível...

Skype Tablet

Será que esse skype tablet pega mesmo?...

Lenovo e o seu novo Ultrabook

Ultrabook chega também pela Lenovo...

Promoções de livros móveis .NET

Baixa agora o seu e aprenda a programar....




NETITC