网站首页 > 物联资讯 > 技术分享

C++:在程序中获取全球唯一标识号(GUID或UUID)

2016-09-28 00:00:00 广州睿丰德信息科技有限公司 阅读
睿丰德科技 专注RFID识别技术和条码识别技术与管理软件的集成项目。质量追溯系统、MES系统、金蝶与条码系统对接、用友与条码系统对接

Windows:使用CoCreateGuid函数(GUID)

[cpp] view plaincopyprint?
  1. #include <objbase.h>  
  2. #include <stdio.h>  
  3.   
  4. #define GUID_LEN 64  
  5.   
  6. int main(int argc, char* argv[])  
  7. {  
  8.     char buffer[GUID_LEN] = { 0 };  
  9.     GUID guid;  
  10.   
  11.     if ( CoCreateGuid(&guid) )  
  12.     {  
  13.         fprintf(stderr, "create guid error\n");  
  14.         return -1;  
  15.     }  
  16.     _snprintf(buffer, sizeof(buffer),   
  17.         "%08X-%04X-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X",   
  18.         guid.Data1, guid.Data2, guid.Data3,   
  19.         guid.Data4[0], guid.Data4[1], guid.Data4[2],   
  20.         guid.Data4[3], guid.Data4[4], guid.Data4[5],   
  21.         guid.Data4[6], guid.Data4[7]);  
  22.     printf("guid: %s\n", buffer);  
  23.   
  24.     return 0;  
  25. }  

 

 

Linux:使用uuid_generate函数(UUID)

[cpp] view plaincopyprint?
    1. //编译命令:gcc atemp.c -o atemp -luuid  
    2. #include <stdio.h>  
    3. #include <uuid/uuid.h>  
    4.   
    5. int main()   
    6. {   
    7.     uuid_t uu;  
    8.     int i;  
    9.     uuid_generate( uu );   
    10.   
    11.     for(i=0;i<16;i++)   
    12.     {   
    13.         printf("%02X-",uu[i]);   
    14.     }   
    15.     printf("\n");   
    16.   
    17.     return 0;   
    18. }   
RFID管理系统集成商 RFID中间件 条码系统中间层 物联网软件集成