首页 > 编程语言 > 详细

MFC中获取GUID

时间:2020-03-14 21:28:46      阅读:93      评论:0      收藏:0      [点我收藏+]

GUID:全局唯一标识 GUID(Global Unique Identifier)

// 获取全局唯一标识 GUID(Global Unique Identifier) 头文件 include <objbase.h>
CString GetGUID()
{
    GUID guid;
    OLECHAR arrGUID[39]={0};
    CoCreateGuid(&guid);
    int ret = StringFromGUID2(guid, arrGUID, 39);
    return CString(arrGUID); // "{C876CF2F-8831-4AE1-AEAB-CFDA78EED36D}"
}

std::string GuidToString(const GUID &guid)
{
    char buf[39] = { 0 };
    sprintf_s(buf, sizeof(buf),
        "{%08X-%04X-%04X-%02X%02X-%02X%02X%02X%02X%02X%02X}",
        guid.Data1, guid.Data2, guid.Data3,
        guid.Data4[0], guid.Data4[1], guid.Data4[2], guid.Data4[3],
        guid.Data4[4], guid.Data4[5], guid.Data4[6], guid.Data4[7]);
    return std::string(buf);
}
//使用
    GUID guid;
    LRESULT ret = ::CoCreateGuid(&guid);//成功,返回0,即 S_OK
    std::string s2 = GuidToString(guid);

 2. 使用Poco,参考Poco学习(二)

// GUID 或者 UUID
#include <Poco/UUIDGenerator.h>
int main()
{
    Poco::UUID uuid;
    try
    {
        uuid = Poco::UUIDGenerator::defaultGenerator().create();//Creates a new time-based UUID
        std::string sRet = uuid.toString();//67440b59-4ad8-3f74-8bab-8b4ae76b4fc3
    }
    catch (Poco::Exception& exc)
    {
        std::cerr << exc.displayText() << std::endl;
        return 1;
    }
    return 0;
}

 

 

 

 

 

 

 

----------------------------

https://blog.csdn.net/semicloud/article/details/89332018

 

MFC中获取GUID

原文:https://www.cnblogs.com/htj10/p/12493964.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!