2012-02-20 13 views
8

Estoy traduciendo una API de Windows C++ a un archivo delphi * .pas.¿Cuál es el tipo de GUID?

tengo este C Struct devuelto por un function

typedef struct _WLAN_HOSTED_NETWORK_STATUS { 
    WLAN_HOSTED_NETWORK_STATE  HostedNetworkState; 
    GUID       IPDeviceID; 
    DOT11_MAC_ADDRESS    wlanHostedNetworkBSSID; 
    DOT11_PHY_TYPE     dot11PhyType; 
    ULONG       ulChannelFrequency; 
    DWORD       dwNumberOfPeers; 
    WLAN_HOSTED_NETWORK_PEER_STATE PeerList[1]; 
} WLAN_HOSTED_NETWORK_STATUS, *PWLAN_HOSTED_NETWORK_STATUS; 

Me traducida a esto:

type 
_WLAN_HOSTED_NETWORK_STATUS = record 
    HostedNetworkState : WLAN_HOSTED_NETWORK_STATE; 
    IPDeviceID : GUID; 
    wlanHostedNetworkBSSID : DOT11_MAC_ADDRESS; 
    dot11PhyType : DOT11_PHY_TYPE; 
    ulChannelFrequency : ULONG; 
    dwNumberOfPeers : DWORD; 
    PeerList : Array [0..1] of WLAN_HOSTED_NETWORK_PEER_STATE; 
end; 
WLAN_HOSTED_NETWORK_STATUS = _WLAN_HOSTED_NETWORK_STATUS; 
PWLAN_HOSTED_NETWORK_STATUS = _WLAN_HOSTED_NETWORK_STATUS; 

pero no he encontrado en referencia MSDN qué es esto GUID tipo de IPDeviceID es una primitiva ¿tipo? ¿Cómo tengo este valor?

+0

He eliminado la etiqueta C++ porque realmente esta es una pregunta pura de Delphi –

+2

Un GUID significa un identificador único global, básicamente es un gran valor único autogenerado. En el contexto de la pregunta sobre la que está preguntando, el uso de esta es identificar de forma única un dispositivo específico instalado en su computadora. Los dispositivos instalados en Windows tienen un GUID utilizado en muchos lugares. Piense en ello como el número de serie único para un hardware particular o un objeto de nivel kernel. En este caso, el número de identificación de su tarjeta WLAN. Delphi admite literales GUID en el código, si ve algo como esto también es un GUID: '{21EC2020-3AEA-1069-A2DD-08002B30309D}' –

Respuesta

6

GUID structure, también conocido como UUID, es un tipo de valor de 128 bits ampliamente utilizado que representa identificadores únicos a nivel mundial.

typedef struct _GUID { 
    DWORD Data1; 
    WORD Data2; 
    WORD Data3; 
    BYTE Data4[8]; 
} GUID; 

Una revisión rápida revela que Delphi ya tiene este tipo, llamado TGuid en el módulo System.

Cuestiones relacionadas