C/Visual C - ¿Como obtengo la dirección MAC?

 
Vista:

¿Como obtengo la dirección MAC?

Publicado por Yavir Robles (1 intervención) el 19/09/2000 00:00:00
Hola, estoy desarrollando un programa para validar ciertos parametros en un red, para esto, necesito la dirección MAC de la PC en la que se encuentra (Dirección única de la tarjeta de Red), ¿Como puedo leer esa dirección desde un programa en Visual C++ 6.0? Gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cómo leer la dirección MAC de la tarjeta de red en Visual C++ 6.0

Publicado por Alejandro (913 intervenciones) el 30/08/2024 00:19:43
Para leer la dirección MAC de la tarjeta de red desde un programa en Visual C++ 6.0, puedes utilizar la función GetAdaptersInfo() de la API de Windows. Esta función te permite obtener información sobre las interfaces de red, incluyendo la dirección MAC.

Aquí tienes un ejemplo de cómo puedes utilizar esta función en tu programa:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#include <iostream>
#include <windows.h>
#include <iphlpapi.h>
#pragma comment(lib, "iphlpapi.lib")
 
int main()
{
    IP_ADAPTER_INFO adapterInfo[16];
    DWORD bufferSize = sizeof(adapterInfo);
 
    // Paso 1: Llamar a GetAdaptersInfo() para obtener la información de las interfaces de red
    DWORD result = GetAdaptersInfo(adapterInfo, &bufferSize);
    if (result == ERROR_SUCCESS) {
        // Paso 2: Recorrer la lista de interfaces de red y obtener la dirección MAC
        IP_ADAPTER_INFO* adapter = adapterInfo;
        while (adapter) {
            std::cout << "Dirección MAC: " << adapter->Address << std::endl;
            adapter = adapter->Next;
        }
    }
    else {
        std::cout << "Error al obtener la información de las interfaces de red." << std::endl;
    }
 
    return 0;
}

Asegúrate de incluir los encabezados `<windows.h>` e `<iphlpapi.h>`, y vincular la biblioteca `iphlpapi.lib` en tu proyecto.

Este código llama a la función GetAdaptersInfo() para obtener la información de las interfaces de red. Luego, recorre la lista de interfaces y muestra la dirección MAC de cada una.

Recuerda que este código está diseñado para Visual C++ 6.0. Si estás utilizando una versión más reciente de Visual C++, es posible que debas realizar algunos ajustes.

Espero que esta solución te sea útil. ¡Buena suerte con tu desarrollo, Yavir!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar