在OBJBASE.H中定义一个 == 操作符
inline BOOL operator== (const GUID& guid1 , const GUID & guid2)
{
return !memcmp(&guid1,guid2,sizoef(GUID));
}
将字符串转换成guid
wchar_t szCLSID[39];
int r = ::StringFormGUID2(CLSID_Component1, szCLSID, 39);
或者
#ifndef _UNICODE
char szCLDID_single[39];
wcstombs(szCLSID_single, szCLISD, 39);
#end if
StringFromCLSID();
stringFromIID();
stringFormGUID2();
CLSIDFormString();
IIDFromString();
//com 的内存分配器
void * CoTaskMemAlloc( ULONG cb);//分配空间
void * CoTaskMemFree( void * pv);//释放空间
将上述的函数用到内存分配器:
wchar_t * string;
//get string from Clisd
::StringFromCLSID(CLSID_Component1, &string );
::CoTaskMemFree(string);