blob: a746de12bfa794c712a3bfaee86c157521c6fdf5 [file] [log] [blame]
// Windows/COM.cpp
#include "StdAfx.h"
#include "Windows/COM.h"
#include "Common/StringConvert.h"
namespace NWindows {
namespace NCOM {
// CoInitialize (NULL); must be called!
UString GUIDToStringW(REFGUID guid)
{
UString string;
const int kStringSize = 48;
StringFromGUID2(guid, string.GetBuffer(kStringSize), kStringSize);
string.ReleaseBuffer();
return string;
}
AString GUIDToStringA(REFGUID guid)
{
return UnicodeStringToMultiByte(GUIDToStringW(guid));
}
HRESULT StringToGUIDW(const wchar_t *string, GUID &classID)
{
return CLSIDFromString((wchar_t *)string, &classID);
}
HRESULT StringToGUIDA(const char *string, GUID &classID)
{
return StringToGUIDW(MultiByteToUnicodeString(string), classID);
}
}}