2012-02-20 37 views
8

Tôi đang dịch API Windows C++ thành tệp delphi * .pas.GUID loại là gì?

Tôi có C Struct này trả về bởi một 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; 

tôi dịch như sau:

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; 

nhưng tôi không tìm thấy trên MSDN tài liệu tham khảo này GUID loại IPDeviceID là những gì nó là một nguyên thủy kiểu? làm cách nào để giữ giá trị này?

+0

Tôi đã xóa thẻ C++ vì đây thực sự là câu hỏi Delphi thuần túy –

+2

GUID nghĩa là Số nhận dạng duy nhất trên toàn cầu, về cơ bản là giá trị duy nhất được tạo tự động rất lớn. Trong bối cảnh của câu hỏi mà bạn đang hỏi, việc sử dụng nó là để xác định duy nhất một thiết bị cụ thể được cài đặt trên máy tính của bạn. Các thiết bị được cài đặt trong các cửa sổ có GUID được sử dụng ở nhiều nơi. Hãy nghĩ về nó như là số sê-ri duy nhất cho một đối tượng cấp phần cứng hoặc hạt nhân cụ thể. Trong trường hợp này, số id của thẻ WLAN của bạn. Delphi hỗ trợ GUID literals trong mã, nếu bạn thấy một cái gì đó như thế này nó cũng là một GUID: '{21EC2020-3AEA-1069-A2DD-08002B30309D}' –

Trả lời

6

GUID structure, còn được gọi là UUID, là loại giá trị 128 bit được sử dụng rộng rãi đại diện cho số nhận dạng duy nhất toàn cầu.

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

Một kiểm tra nhanh chóng cho thấy rằng Delphi đã có loại này, được đặt tên TGuid trong mô-đun System.

Các vấn đề liên quan