// GenerateGUID.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include <objbase.h>
#include <stdio.h>
#include <iostream>
using std::string;
string CreateGUID()
{
CoInitialize(NULL);
GUID guid = {0};
if (S_OK != ::CoCreateGuid(&guid))
{
return string("");
}
char szBuffer[64] = {0};
_snprintf_s(szBuffer,
sizeof(szBuffer),
sizeof(szBuffer),
"{%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 string(szBuffer);
}
int _tmain(int argc, _TCHAR* argv[])
{
printf(CreateGUID().c_str());
printf("\n");
return 0;
}