Busca Online:
 

Seja bem vindo(a) Visitante, voc no est logado deseja logar
na comunidade ASPNETi.COM e participar de servios e promoes ? clique aqui.

Pegando dados do computador facilmente via software



Data Publicação: 26/4/2010 12:38:07
Total de visualizações: 1005

comente
Diminuir o tamanho das letras Aumentar o tamanho das letras



    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.




Total de visualizações: 1005
voltar   comente  subir


Comentários:


Comente (dê sua opinião): VOCÊ PRECISA LOGAR

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

GridView - Valor total no footer
Sistema Calcula IMC e IGC no Celular
Sistema de Login – Parte IV
Site fora do ar - Pedido de desculpas
Documento padrão de desenvolvimento
MinimizeBox no Celular
IsWholeNumber
Convertendo e salvando imagens via código
Projeto Natal é mostrado para a mídia
Nova forma de utilizar cache utilizando Visual Studio.NET 2005
Exemplo usando try e catch
XmlDataSource
Insistência com Vírus por E-mail
Trabalhando com Ipersonate e Web
Fazer Log, precisa ou não precisa?
Sistema de Login em ASP – Parte V
Vídeo - Mostrando um sistema com pocket pc
Sistema de Login em ASP – Parte 10
Linha do GridView (colorindo ao passar o mouse)
ASP.NET MVC
Detectando erro a todo custo
Promoção semanal de e-Books .NET
Criptografia de String de Conexão no Web.Config
IsAlpha
Calcular Média de Combustível
SmartNavigation – 1.0 e 1.1 MaintainScroll PositionOn Postback – 2.0
Atendimento online
II Encontro .NET em Brasília
Treinamento VSTS
Criando e Lendo Cookie
Crie a sua própria rede social no ning
Nova promoção hoje e amanhã para usuários da comunidade aspneti.com
Windows Phone 7 Multi Touch
Windows Phone 7 Jump Start
Prepare o Sql Server para o VS 2005
Sobre o Autor
  [sumir] [aparecer]
 
Mauricio Junior Maurício Júnior
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 27 anos e possuo sete livros publicados pela editora Ciência Moderna no ano de 2009. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.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.orgSite pessoal  www.mauriciojunior.org

Informaes Online
Usurios Online: 1032
Artigos:  750
Vdeos:  61
PodCast's:  45
Frum:  3128
Empregos:  1385
Usurios Cadastrados: 6166
Publicidade
LAYERDEV




Vdeos Publicados
 

Duas dicas de internet - Google RealTime e OpenDNS

Desconfie sempre da internet e emails

Microsoft Office online no Safari funcionando

Inovação Visual Studio .NET 2010 - parte 4

Office Live online

TAB TAB na ferramenta Visual Studio .NET

Apresentação do IMC - Sistema de Controle de Peso Mobile

Inovação Visual Studio .NET 2010 - parte 3

Inovação Visual Studio .NET 2010 - parte 1

Download de vídeos com o Safari

Criando Chart - Novo componente integrado com o Visual Studio.NET 2010

Serviços: SAC e SMS integrado

Café com TI - Info sobre o Visual Studio.NET 2010 - WebConfig

Café com TI - Info sobre o Visual Studio.NET 2010

Café com TI - Vírus se passando por Correios

Café com TI - Novo jeito de mandar e-mail com vírus

Café com TI - Formatando todo tipo de String

Resolvido erro do Banco do Brasil no browser

Erro no site do Banco do Brasil com o Safari

Duas dicas do Snow Leopard

Incompatibilidade no Snow Leopard

E-mail com vírus, veja os detalhes

Café com TI - Continuando a configuração de Themes no site

Café com Ti - Banner Rotativo

Café com TI - Evento Eco Brasília

Café com TI - Themes dentro do ASPNETi.COM

Café com TI - Trabalhando com o iCal no Macbook

Café com TI - Deixando o rodapé do seu site fixo

Café com TI - Windows 7 sendo utilizado sem qualquer incompatibilidade

Café com Ti - ASP.NET - Explicando o componente ModalDialogExtender do Ajax Toolkit

Café com TI - Indexação de URL com ASP.NET

Café com TI - Configurando Mail para sua conta no HotMail
Enquete ASPNETi.COM
 Os podcasts tem sido proveitoso pra você?

Favor logar para votar
 
Publicidade Vertical
NETITC