bollywood actresses hair loss hair rehab london contact number cheap hair extensions brazilian curly hair with closure hair extension fails human hair wigs black ponytail hairstyles 2018 sunny hair extensions uk hair extensions remy hair extensions weft koko one piece hair extensions clip hair
Obtendo o MAC da placa de rede

Obtendo o MAC da placa de rede

Nota importante: para ter acesso aos vídeos e arquivos exemplos deste site, adquira um dos planos apresentados abaixo. Você pode comprar em até 10x no Cartão de Crédito. 

Veja como comprar e saiba mais sobre o material oferecido,  clicando aqui.

Open v3

 


 

Toda a placa de rede possui um endereço fixo, conhecido como MAC (Media Access Control), que é gravado em um dos seus chips.   Esse endereço possui 12 dígitos, com o seguinte formato: 02-00-54-B5-4E-01.  Convém destacar que não existem duas placas de rede com o mesmo endereço, o que torna para nós, programadores, um instrumento de identificação exclusiva do computador do usuário.  A principal utilidade, consiste na geração de uma chave de segurança, contra a pirataria, para os nossos aplicativos, e que você poderá se aprofundar no tutorial sobre Sistema Shareware, aqui do site.

Até bem pouco tempo, vinha  usando o número do HD (que também é uma boa opção) como forma de identificar a máquina do usuário, porque o código para a extração desse endereço MAC que eu tinha, era complicado e não confiável, pois falhava em alguns modelos de placas.

Acabei que em minhas andanças pelos fóruns, encontrei um código, que capturava o IP da máquina e achei então que esse código poderia ser adaptado para capturar o MAC.  A adaptação deu certo e o código ficou bem simples.  

O seu computador possui um velho sistema operacional, chamado de DOS e que é muito utilizado até hoje pelo pessoal da área de manutenção, pois existem vários comandos úteis e dentre eles está o que captura o número MAC da placa de rede.    Para abrir a tela do DOS ,  basta rodar o comando CMD pelo executar do Windows.

Veja a tela do DOS abaixo:

CMD

Observe que foi digitado o comando GETMAC /NH /FO CSV para se obter as informações do MAC da Placa de Rede.

Pois bem, é possível, através do VBA, acionar essa tela do DOS, executar o comando GETMAC e extrair o endereço MAC.

Leia com atenção os comentários do código utilizado!

Para acessar o código faça o seu cadastro de visitante aqui ou entre com o seu login aqui.

Download

Segue o arquivo exemplo, com o código apresentado. Ofereço também uma codificação para transformar essa seqüência hexadecimal , em um número padronizado.

Bom estudo!


 

 


14 comentário(s)

Avelino Sampaio   27/04/2012 09:01:20

Alessandra,

vá na seção "Tutorias" aqui do site e abra o tutorial sobre "Shareware". Lá tem o código para o HD

Bom estudo!

Alessandra   26/04/2012 23:05:56

Boa Noite Avelino

E se eu precisar pegar o número do hd também usando o windows 7.

Grata

Avelino Sampaio   13/08/2011 12:23:59

Marcondes,

não conesgui captar bem o que vc deseja. Entre em contato pela seção Contato aqui do site e me forneça mais detalhes.

No aguardo

Marcondes Souza   13/08/2011 10:03:21

Avelino, bom dia,

Gostaria de saber se tem uma possibilidade de gerar um código sequencial a partir do momento quando os caracteres forem diferentes caso contrário gere o código sequencial 001;

Avelino Sampaio   06/07/2011 07:52:27

Dilton,

Com algumas modificações , você pode utilizar o código acima , usando o comando IPConfig.

Outra solução bem simples seria usando o WMI. Abra o VBA, rode a função abaixo e veja o resultado na janela imediata.

Public Sub IP()
Dim objWMIService As Object
Dim strComputer As String
Dim IPConfigSet
Dim IPConfig
Dim i
strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")

Set IPConfigSet = objWMIService.ExecQuery _
("Select * from Win32_NetworkAdapterConfiguration Where IPEnabled=TRUE")

For Each IPConfig In IPConfigSet
If Not IsNull(IPConfig.IPAddress) Then
For i = LBound(IPConfig.IPAddress) To UBound(IPConfig.IPAddress)
Debug.Print IPConfig.IPAddress(i)
Next
End If
Next
End Sub

Sucesso!

DILTON LAGO   29/06/2011 21:07:47

Ola, gostaria de saber se tem uma dica simples como essa para obter o IP da maquina.

Jairo William Meireles Iglesias   24/06/2011 21:11:33

Avelino Sampaio,

Funcionou agora ^^

Otimo trabalho. Obter o endereço de MAC do computador do cliente ajuda em um bom codigo de registro do sistema.

Obrigado.

Avelino Sampaio   16/06/2011 04:54:12

Jairo,

fiz uma modificação no código. Por favor, baixe o exemplo novamente e faça o teste.

caso não resolva, entre em contato pela seção "contato" aqui do site para eu me comunicar com você.

no aguardo

Avelino Sampaio   15/06/2011 07:49:17

Jairo,

obrigado pela sua informação. Hoje mesmo estarei testando o código no Windows Xp e darei um retorno. Acredito que estaja faltando um tempo de espera no código para capturar o valor objTempFile.

Jairo William Meireles Iglesias   14/06/2011 10:20:43

Estou usando Windows XP com SP3.
A macro de segurança está desativada totalmente.

Avelino Sampaio   14/06/2011 05:47:53

Jairo e Alessandro,

informe a versão do Windows. Xp, Vista ou 7 ?

verifiquem se a macro de segurança do Access está ativa.

No aguardo

Alessandro Batistuti   13/06/2011 08:59:40

Testei o cód acima e também não retornou nenhum valor.

Jairo William Meireles Iglesias   12/06/2011 19:58:09

Também testei esse exemplo e não funcionou no Access.
No DOS funcionou perfeitamente.

Sabe dizer o porque de não ter funcionado?

MARCIO MELO - RJ   11/06/2011 17:55:59

Executei o cód. no cmd / DOS funcionou, pegou a MAC mesmo c a placa de rede desconectada, não funcionou no ex. em access, e também não retornou nenhum erro. Irei análisar mais pra frente o que aconteceu, mais uma fonte de serial, forte abraço a todos...


Envie seu comentário: