如何在WinRT中的C++中创建新的GUID

How do you create a new GUID in C++ in WinRT?

本文关键字:创建 GUID C++ WinRT 中的      更新时间:2023-10-16

C#方法Guid的等价物是什么。C++WinRT中的NewGuid()?

我相信你在寻找http://msdn.microsoft.com/en-us/library/windows/desktop/ms688568%28v=vs.85%29.aspx

CoCreateGuid();

如果您正在编写Windows应用商店应用程序(也称为Metro Style),则必须使用CoCreateGuid,因为UuidCreate仅适用于桌面应用程序。

来自MSDN:

CoCreateGuid:

适用于:桌面应用程序|Windows应用商店应用程序
创建一个GUID,一个唯一的用于CLSID和接口标识符的128位整数。

HRESULT CoCreateGuid(  _Out_  GUID *pguid );

UuidCreate:

适用于:仅限桌面应用程序

我了解Windows 8,但如果您仍然可以访问常规的Win32/64 API,则可以使用许多机制。来自rpcrt4库的UuidCreate()是一个,来自oleout lib的CoCreateGuid()是另一个(它只是转发到前者)。后者的好处是最终直接将结果丢弃在GUID结构中。