VC++生成GUID
836 ワード
string形式を生成する:
wstring形式を生成するには、次の手順に従います.
リンクエラーが発生した場合は、Rpcrt 4.libリンクライブラリをリンク入力に追加します.
char* GenerateGuid()
{
char* guidBuf;
guidBuf = (char *)malloc(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;
}
wstring形式を生成するには、次の手順に従います.
wstring GenerateGuid()
{
wchar_t *guidStr = NULL;
GUID *pguid = new GUID;
CoCreateGuid(pguid);
// Convert the GUID to a string
UuidToString(pguid, (RPC_WSTR*)&guidStr);
delete pguid;
return wstring(guidStr);
}
リンクエラーが発生した場合は、Rpcrt 4.libリンクライブラリをリンク入力に追加します.