C++ 生成GUID
1
//--生成GUID的代码
2
//--相关程序/微软guidgen.exe
3![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
#include "stdafx.h"
5
#include <objbase.h>
6
#include <stdio.h>
7![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
//--生成GUID
9
const char* newGUID()
10
{
11
static char buf[64] = {0};
12
GUID guid;
13
if (S_OK == ::CoCreateGuid(&guid))
14
{
15
_snprintf(buf, sizeof(buf)
16
, "{%08X-%04X-%04x-%02X%02X-%02X%02X%02X%02X%02X%02X}"
17
, guid.Data1
18
, guid.Data2
19
, guid.Data3
20
, guid.Data4[0], guid.Data4[1]
21
, guid.Data4[2], guid.Data4[3], guid.Data4[4], guid.Data4[5]
22
, guid.Data4[6], guid.Data4[7]
23
);
24
}
25
return (const char*)buf;
26
}
27![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
int main(int argc, char* argv[])
29
{
30
//--COM
31
CoInitialize(NULL);
32![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
printf(newGUID());
34
printf("\r\n");
35![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
36
//--COM
37
CoUninitialize();
38![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
39
return 0;
40
}
41![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
42![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
36
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
37
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
38
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
39
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
40
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
41
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
42
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)