2025-04-27 07:49:33 -04:00

117 lines
3.4 KiB
C

// Copyright (c) 1997-2001 Microsoft Corporation, All Rights Reserved
typedef enum
{
ALL_INSTANCES = 1,
ASSOC_GROUPING,
OBJECT_GROUPING_WITH_INSTANCES,
OBJECT_GROUPING_NO_INSTANCES,
NO_APPEAR,
ALL_IGNORE
} NAVIGATOR_APPEARANCE;
SCODE MakeSafeArray(SAFEARRAY FAR ** pRet, VARTYPE vt, int iLen);
SCODE PutStringInSafeArray
(SAFEARRAY FAR * psa,CString *pcs, int iIndex);
BOOL SetProperty
(IWbemServices * pProv, IWbemClassObject * pInst,
CString *pcsProperty, CString *pcsPropertyValue);
BOOL GetPropertyAsVariant
(IWbemClassObject * pInst,
CString *pcsProperty,VARIANT &varOut, CIMTYPE& cimtypeOut );
CString GetProperty
(IWbemServices * pProv, IWbemClassObject * pInst,
CString *pcsProperty);
int GetSortedPropNames
(IWbemClassObject * pClass, CStringArray &rcsaReturn, CMapStringToPtr &rcmstpPropFlavors);
CPtrArray *GetObjectInstances
(IWbemServices * pProv, IWbemClassObject *pAssoc,
IWbemClassObject *pimcoExclude = NULL);
int GetPropNames
(IWbemClassObject * pClass, CStringArray *&pcsaReturn);
CString GetBSTRAttrib
(IWbemClassObject * pClassInt,CString *pcsPropName, CString *pcsAttribName);
CString BuildOBJDBGetRefQuery
(IWbemServices *pProv, IWbemClassObject *pimcoTarget,
IWbemClassObject *pimcoResultClass, CString *pcsRoleFilter,
CString *pcsReqAttrib = NULL, BOOL bClassOnly = FALSE);
CString BuildOBJDBGetAssocsQuery
(IWbemServices *pProv, IWbemClassObject *pimcoTarget,
IWbemClassObject *pimcoAssocClass, IWbemClassObject *pimcoResultClass,
CString *pcsMyRoleFilter, CString *pcsReqAttrib = NULL,
CString *pcsReqAssocAttrib = NULL, BOOL bClassOnly = FALSE);
IEnumWbemClassObject *ExecOBJDBQuery
(IWbemServices * pProv, CString &csQuery);
CString GetIWbemClass(IWbemServices *pProv, IWbemClassObject *pClass);
CString GetIWbemClass(IWbemServices *pProv, CString *pcsPath);
CString GetIWbemClassPath(IWbemServices *pProv, CString *pcsPath);
CString GetIWbemSuperClass(IWbemServices *pProv, IWbemClassObject *pClass);
CString GetIWbemSuperClass(IWbemServices *pProv, CString *pcsClass, BOOL bClass);
CString GetIWbemRelPath(IWbemServices *pProv, IWbemClassObject *pClass);
CString GetIWbemFullPath(IWbemServices *pProv, IWbemClassObject *pClass);
IWbemClassObject *GetClassObject
(IWbemServices *pProv,IWbemClassObject *pimcoInstance);
BOOL ObjectInDifferentNamespace
(IWbemServices *pProv, CString *pcsNamespace, IWbemClassObject *pObject);
CString GetObjectNamespace
(IWbemServices *pProv, IWbemClassObject *pObject);
IEnumWbemClassObject *ExecQuery
(IWbemServices * pProv, CString &csQueryType, CString &rcsQuery, CString &rcsNamespace);
CPtrArray *GetObjectInstancesFromEnum
(IEnumWbemClassObject *pemcoObjects, BOOL &bCancel);
BOOL ObjectIsDynamic(SCODE& sc, IWbemClassObject* pco) ;
CString GetSDKDirectory();
CStringArray *ClassDerivation (IWbemServices *pServices, CString &rcsPath);
CStringArray *ClassDerivation (IWbemClassObject *pObject);
void ErrorMsg
(CString *pcsUserMsg, SCODE sc, BOOL bUseErrorObject,
BOOL bLog, CString *pcsLogMsg, char *szFile, int nLine,
UINT uType = MB_ICONEXCLAMATION);
void LogMsg
(CString *pcsLogMsg, char *szFile, int nLine);
CString GetPathNamespace (CString &csPath);
CString GetClassFromPath(CString &csPath);
CString GetClassNameFromPath(CString &csPath);
void MoveWindowToLowerLeftOfOwner(CWnd *pWnd);
void IntersectInPlace (CStringArray& dest, CStringArray& ar);