Fri, 16 Jan 2015 18:13:44 +0100
Integrate suggestion from review to improve consistency with existing code.
1 // Windows/COM.cpp
3 #include "StdAfx.h"
5 #include "Windows/COM.h"
6 #include "Common/StringConvert.h"
8 namespace NWindows {
9 namespace NCOM {
11 // CoInitialize (NULL); must be called!
13 UString GUIDToStringW(REFGUID guid)
14 {
15 UString string;
16 const int kStringSize = 48;
17 StringFromGUID2(guid, string.GetBuffer(kStringSize), kStringSize);
18 string.ReleaseBuffer();
19 return string;
20 }
22 AString GUIDToStringA(REFGUID guid)
23 {
24 return UnicodeStringToMultiByte(GUIDToStringW(guid));
25 }
27 HRESULT StringToGUIDW(const wchar_t *string, GUID &classID)
28 {
29 return CLSIDFromString((wchar_t *)string, &classID);
30 }
32 HRESULT StringToGUIDA(const char *string, GUID &classID)
33 {
34 return StringToGUIDW(MultiByteToUnicodeString(string), classID);
35 }
37 }}