56 lines
1.8 KiB
C++
56 lines
1.8 KiB
C++
|
|
|||
|
#define _SYS_GUID_OPERATORS_
|
|||
|
#include <windows.h>
|
|||
|
#include <ole2.h>
|
|||
|
#include <stdlib.h>
|
|||
|
|
|||
|
//+-------------------------------------------------------------------------
|
|||
|
//
|
|||
|
// Function: IsEqualGUID (public)
|
|||
|
//
|
|||
|
// Synopsis: compares two guids for equality
|
|||
|
//
|
|||
|
// Arguments: [guid1] - the first guid
|
|||
|
// [guid2] - the second guid to compare the first one with
|
|||
|
//
|
|||
|
// Returns: TRUE if equal, FALSE if not.
|
|||
|
//
|
|||
|
// Note:
|
|||
|
// Only reason we have this function is because we exported it originally
|
|||
|
// from OLE32.DLL and forgot to take it out when we made it an inline
|
|||
|
// function in objbase.h. Somebody out there may be relying on it being
|
|||
|
// available. Internally we must use wIsEqualGUID.
|
|||
|
//
|
|||
|
//--------------------------------------------------------------------------
|
|||
|
#undef IsEqualGUID // undo the #define in objbase.h
|
|||
|
extern "C" BOOL __stdcall IsEqualGUID(GUID &guid1, GUID &guid2)
|
|||
|
{
|
|||
|
return (
|
|||
|
((PLONG) &guid1)[0] == ((PLONG) &guid2)[0] &&
|
|||
|
((PLONG) &guid1)[1] == ((PLONG) &guid2)[1] &&
|
|||
|
((PLONG) &guid1)[2] == ((PLONG) &guid2)[2] &&
|
|||
|
((PLONG) &guid1)[3] == ((PLONG) &guid2)[3]);
|
|||
|
}
|
|||
|
|
|||
|
//+-------------------------------------------------------------------------
|
|||
|
//
|
|||
|
// Function: wIsEqualGUID (internal)
|
|||
|
//
|
|||
|
// Synopsis: compares two guids for equality
|
|||
|
//
|
|||
|
// Arguments: [guid1] - the first guid
|
|||
|
// [guid2] - the second guid to compare the first one with
|
|||
|
//
|
|||
|
// Returns: TRUE if equal, FALSE if not.
|
|||
|
//
|
|||
|
//--------------------------------------------------------------------------
|
|||
|
|
|||
|
BOOL __fastcall wIsEqualGUID(REFGUID guid1, REFGUID guid2)
|
|||
|
{
|
|||
|
return (
|
|||
|
((PLONG) &guid1)[0] == ((PLONG) &guid2)[0] &&
|
|||
|
((PLONG) &guid1)[1] == ((PLONG) &guid2)[1] &&
|
|||
|
((PLONG) &guid1)[2] == ((PLONG) &guid2)[2] &&
|
|||
|
((PLONG) &guid1)[3] == ((PLONG) &guid2)[3]);
|
|||
|
}
|
|||
|
|