CInstance class
[The CInstance class is part of the WMI Provider Framework which is now considered in final state, and no further development, enhancements, or updates will be available for non-security related issues affecting these libraries. The MI APIs should be used for all new development.]
The CInstance class is used to retrieve and update the values of properties defined for the instances supported by the WMI Provider Framework. The CInstance class also provides access to the provider framework's implementation of the CInstance interface.
It is not expected that provider writers will need to derive from this class. Use Provider::CreateNewInstance to create an instance of this class.
CInstance has these types of members:
Methods
The CInstance class has these methods.Method | Description |
---|---|
Commit | Returns the current instance to WMI. |
Getbool | Retrieves a Boolean property. |
GetByte | Retrieves a BYTE-compatible property. |
GetCHString | Retrieves a string property. |
GetClassObjectInterface | Returns an IWbemClassObject interface pointer. |
GetDateTime | Returns a datetime property. |
GetDOUBLE | Retrieves a DOUBLE property. |
GetDWORD | Retrieves a DWORD property. |
GetEmbeddedObject | Retrieves an embedded CInstance property. |
GetMethodContext | Returns a pointer to a MethodContext object. |
GetStatus | Determines whether a property exists and, if so, determines its type. |
GetStringArray | Retrieves a property that represents an array of strings. |
GetTimeSpan | Retrieves a property that represents a WMI time span. |
GetVariant | Retrieves a VARIANT property. |
GetWBEMINT16 | Retrieves a 16-bit integer property. |
GetWBEMINT64 | Overloaded. Retrieves a 64-bit integer property. |
GetWCHAR | Retrieves a WCHAR property. |
GetWORD | Retrieves a WORD property. |
IsNull | Determines if the value of a particular property is NULL. |
Setbool | Sets a Boolean property. |
SetByte | Sets a BYTE property. |
SetCharSplat | Overloaded. Sets a string property. |
SetCHString | Overloaded. Sets a string property. |
SetDateTime | Sets a datetime property. |
SetDOUBLE | Sets a DOUBLE property. |
SetDWORD | Sets a DWORD property. |
SetEmbeddedObject | Sets an embedded CInstance property. |
SetNull | Sets a property to NULL. |
SetStringArray | Sets a property that represents an array of strings. |
SetTimeSpan | Sets a property that represents a time span. |
SetVariant | Sets a VARIANT property. |
SetWBEMINT16 | Sets a 16-bit integer property. |
SetWBEMINT64 | Overloaded. Sets a 64-bit integer property. |
SetWCHARSplat | Sets a WCHAR string property. |
SetWORD | Sets a WORD property. |
Methods
The CInstance class has these methods.
Method | Description |
---|---|
CInstance::Commit | The Commit method returns the current instance to WMI. |
CInstance::Getbool | The Getbool method retrieves a Boolean property. |
CInstance::GetByte | The GetByte method retrieves a BYTE-compatible property. |
CInstance::GetCHString | The GetCHString method retrieves a string property. |
CInstance::GetClassObjectInterface | The GetClassObjectInterface method returns an IWbemClassObject interface pointer. |
CInstance::GetDateTime | The GetDateTime method returns a datetime property. |
CInstance::GetDOUBLE | The GetDOUBLE method retrieves a DOUBLE property. |
CInstance::GetDWORD | The GetDWORD method retrieves a DWORD property. |
CInstance::GetEmbeddedObject | The GetEmbeddedObject method retrieves a pointer to an embedded CInstance object. The pointer can be used to get and set properties of that embedded object. |
CInstance::GetMethodContext | The GetMethodContext method returns a pointer to a MethodContext object. |
CInstance::GetStatus | The GetStatus method determines whether a property exists and, if so, determines its type. |
CInstance::GetStringArray | The GetStringArray method retrieves a property that represents an array of strings. |
CInstance::GetTimeSpan | The GetTimeSpan method retrieves a property that represents a WMI time span. |
CInstance::GetVariant | The GetVariant method retrieves a VARIANT property. |
CInstance::GetWBEMINT16 | The GetWBEMINT16 method retrieves a 16-bit integer property. |
CInstance::GetWBEMINT64 | The GetWBEMINT64 method retrieves a 64-bit integer property. |
CInstance::GetWBEMINT64 | The GetWBEMINT64 method retrieves a 64-bit integer property. |
CInstance::GetWCHAR | The GetWCHAR method retrieves a WCHAR string property. |
CInstance::GetWORD | The GetWORD method retrieves a WORD property. |
CInstance::IsNull | The IsNull method determines if the value of a particular property is NULL. |
CInstance::Setbool | The Setbool method sets a Boolean property. |
CInstance::SetByte | The SetByte method sets a BYTE property. |
CInstance::SetCharSplat | The SetCharSplat(LPCWSTR, DWORD) method sets a string. |
CInstance::SetCharSplat | The SetCharSplat(LPCWSTR, LPCWSTR) method sets a string property. |
CInstance::SetCharSplat | The SetCharSplat(LPCWSTR, LPCSTR) method sets a string property. |
CInstance::SetCHString | The SetCHString(LPCWSTR, const CHString&) method sets a string property. |
CInstance::SetCHString | The SetCHString(LPCWSTR, LPCSTR) method sets a string property. |
CInstance::SetDateTime | The SetDateTime method sets a datetime property. |
CInstance::SetDOUBLE | CInstance::SetDOUBLE method |
CInstance::SetDWORD | The SetDWORD method sets a DWORD property. |
CInstance::SetEmbeddedObject | The SetEmbeddedObject method sets an embedded CInstance property. |
CInstance::SetNull | The SetNull method sets a property to NULL. |
CInstance::SetStringArray | The SetStringArray method sets a property that represents an array of strings. |
CInstance::SetTimeSpan | The SetTimeSpan method sets a property that represents a time span. |
CInstance::SetVariant | The SetVariant method sets a VARIANT property. |
CInstance::SetWBEMINT16 | The SetWBEMINT16 method sets a 16-bit integer property. |
CInstance::SetWBEMINT64 | The SetWBEMINT64(LPCWSTR, const LONGLONG&) method sets a 64-bit integer value. |
CInstance::SetWBEMINT64 | The SetWBEMINT64(LPCWSTR, const LONGLONG&) method sets a 64-bit integer value. |
CInstance::SetWCHARSplat | The SetWCHARSplat method sets a string property. |
CInstance::SetWORD | The SetWORD method sets a WORD property. |
CInstance::GetWBEMINT64 | The GetWBEMINT64 method retrieves a 64-bit integer property. |
CInstance::SetCHString | The SetCHString(LPCWSTR, const CHString&) method sets a string property. |
CInstance::SetWBEMINT64 | The SetWBEMINT64(LPCWSTR, const LONGLONG&) method sets a 64-bit integer value. |
Remarks
The destructor for this class is CInstance::~CInstance.
Methods of the CInstance class are used to retrieve and set property values. Property data types are defined using CIM data types which can be seen in a .mof file. When querying or setting a property value using CInstance methods, it is necessary to use a method that is compatible with the property's CIM data type. The following table lists CIM data types and the permissible CInstance get or set methods for accessing a property of that data type.
CIM data type | CInstance Get/Set method types |
---|---|
string |
VARIANT WCHAR CharSplat |
sint8 | VARIANT |
uint8 | BYTE |
sint16 |
WBEMINT16
VARIANT |
uint16 |
WORD
DWORD VARIANT |
sint32 |
WORD
DWORD VARIANT |
uint32 |
WORD
DWORD VARIANT |
sint64 |
VARIANT WBEMINT64 WCHAR |
uint64 |
VARIANT WBEMINT64 WCHAR |
real32 | VARIANT |
real64 |
DOUBLE VARIANT |
char16 | VARIANT |
DateTime |
DateTime VARIANT WCHAR |
Requirements
Minimum supported client | Windows Vista |
Minimum supported server | Windows Server 2008 |
Target Platform | Windows |
Header | instance.h (include FwCommon.h) |