Files
easy7zip/CPP/Windows/COM.cpp
Igor Pavlov f08f4dcc3c 9.34
2016-05-28 00:16:51 +01:00

38 lines
731 B
C++

// 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);
}
}}