生成GUID的两种方法

1. 

int main()
{
	CoInitialize(NULL);
	char zGuid[64] = {0};
	GUID guid;
	if (S_OK == ::CoCreateGuid(&guid))
	{
		_snprintf(zGuid, sizeof(zGuid)
			, "{%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();
}



2.


#include <rpcdce.h>
#pragma comment(lib, "Rpcrt4.lib")

int main()
{
	UUID f_Uuid;
	RPC_STATUS rst = UuidCreateSequential( &f_Uuid ); 
	if ((RPC_S_OK != rst) && (RPC_S_UUID_LOCAL_ONLY != rst)) 
	{
		return ; 
	}

	RPC_CSTR szUuid = NULL; 
	rst = UuidToString( &f_Uuid, &szUuid );
	RpcStringFree( &szUuid ); 
	return ; 
}


猜你喜欢

转载自blog.csdn.net/weifddx/article/details/48269205
今日推荐