创建GUID

Posted on 2012-01-12 00:38  一年级的小学生  阅读(790)  评论(0编辑  收藏  举报

GUID是什么?全球唯一标示符。

VC++中,想要获得一个GUID,可以通过方法CoCreateGuid,创建一个GUID的对象。

下面是我在网上收藏的代码,将一个GUID转换成字符串。

原始网址:http://blog.csdn.net/missshirly/article/details/5609642

char* NewGuid(char* guidBuf)
{
	memset(guidBuf,0,64);
	GUID guid;
	CoInitialize(NULL);
	if(S_OK == CoCreateGuid(&guid))
	{
	_snprintf(guidBuf, 64,
		"{%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]);
	}
	CoUninitialize();
	return guidBuf;
}
	  

WCHAR* NewGuid(WCHAR* guidBuf)
{
	char guidBufA[64];
	wcsset(guidBuf,0);
	NewGuid(guidBufA);
	if(guidBufA)
	{
		MultiByteToWideChar(CP_ACP,NULL,guidBufA,64,guidBuf,64);
	}
	return guidBuf;
}